1
2
3
4
5
6
7
8
9
10 #ifndef PCMK__CRM_COMMON_LOGGING_COMPAT__H
11 # define PCMK__CRM_COMMON_LOGGING_COMPAT__H
12
13 #include <glib.h>
14 #include <libxml/tree.h>
15
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19
20
21
22
23
24
25
26
27
28
29
30
31 enum xml_log_options {
32 xml_log_option_filtered = 0x0001,
33 xml_log_option_formatted = 0x0002,
34 xml_log_option_text = 0x0004,
35 xml_log_option_full_fledged = 0x0008,
36 xml_log_option_diff_plus = 0x0010,
37 xml_log_option_diff_minus = 0x0020,
38 xml_log_option_diff_short = 0x0040,
39 xml_log_option_diff_all = 0x0100,
40 xml_log_option_dirty_add = 0x1000,
41 xml_log_option_open = 0x2000,
42 xml_log_option_children = 0x4000,
43 xml_log_option_close = 0x8000,
44 };
45
46
47
48
49
50
51
52
53
54
55
56
57 # define do_crm_log_always(level, fmt, args...) do { \
58 switch (level) { \
59 case LOG_STDOUT: case LOG_NEVER: \
60 break; \
61 default: \
62 qb_log((level), fmt , ##args); \
63 break; \
64 } \
65 } while (0)
66
67
68 #define crm_str(x) (const char *) ((x)? (x) : "<null>")
69
70
71 gboolean crm_log_cli_init(const char *entity);
72
73
74 gboolean crm_add_logfile(const char *filename);
75
76
77 void log_data_element(int log_level, const char *file, const char *function,
78 int line, const char *prefix, const xmlNode *data,
79 int depth, int legacy_options);
80
81 #ifdef __cplusplus
82 }
83 #endif
84
85 #endif