• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *
3  * Copyright 2015 gRPC authors.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 #include "test/core/util/grpc_profiler.h"
20 
21 #if GRPC_HAVE_PERFTOOLS
22 #include <gperftools/profiler.h>
23 
grpc_profiler_start(const char * filename)24 void grpc_profiler_start(const char* filename) { ProfilerStart(filename); }
25 
grpc_profiler_stop()26 void grpc_profiler_stop() { ProfilerStop(); }
27 #else
28 #include <grpc/support/log.h>
29 
grpc_profiler_start(const char * filename)30 void grpc_profiler_start(const char* filename) {
31   static int printed_warning = 0;
32   if (!printed_warning) {
33     gpr_log(GPR_DEBUG,
34             "You do not have google-perftools installed, profiling is disabled "
35             "[for %s]",
36             filename);
37     gpr_log(GPR_DEBUG,
38             "To install on ubuntu: sudo apt-get install google-perftools "
39             "libgoogle-perftools-dev");
40     printed_warning = 1;
41   }
42 }
43 
grpc_profiler_stop(void)44 void grpc_profiler_stop(void) {}
45 #endif
46