proton  0
log.h
Go to the documentation of this file.
1 #ifndef LOG_H
2 #define LOG_H
3 /*
4  * Licensed to the Apache Software Foundation (ASF) under one
5  * or more contributor license agreements. See the NOTICE file
6  * distributed with this work for additional information
7  * regarding copyright ownership. The ASF licenses this file
8  * to you under the Apache License, Version 2.0 (the
9  * "License"); you may not use this file except in compliance
10  * with the License. You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing,
15  * software distributed under the License is distributed on an
16  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17  * KIND, either express or implied. See the License for the
18  * specific language governing permissions and limitations
19  * under the License.
20  */
21 
22 /**@file
23  *
24  * Control log messages that are not associated with a transport.
25  * See pn_transport_trace for transport-related logging.
26  */
27 
28 #include <proton/import_export.h>
29 #include <proton/type_compat.h>
30 
31 /** Callback for customized logging. */
32 typedef void (*pn_logger_t)(const char *message);
33 
34 /** Enable/disable global logging.
35  *
36  * By default, logging is enabled by envionment variable PN_TRACE_LOG.
37  * Calling this function overrides the environment setting.
38  */
39 PN_EXTERN void pn_log_enable(bool enabled);
40 
41 /** Set the logger.
42  *
43  * By default a logger that prints to stderr is installed.
44  *
45  * @param logger is called with each log messsage if logging is enabled.
46  * Passing 0 disables logging regardless of pn_log_enable() or environment settings.
47  */
49 
50 #endif
PN_EXTERN void pn_log_enable(bool enabled)
Enable/disable global logging.
PN_EXTERN void pn_log_logger(pn_logger_t logger)
Set the logger.
#define PN_EXTERN
Definition: import_export.h:53
void(* pn_logger_t)(const char *message)
Callback for customized logging.
Definition: log.h:32