sessiond: kernel: log kernel tracer status on change
[lttng-tools.git] / src / bin / lttng-sessiond / tracker.hpp
1 /*
2 * Copyright (C) 2018 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
3 * Copyright (C) 2020 Jérémie Galarneau <jeremie.galarneau@efficios.com>
4 *
5 * SPDX-License-Identifier: GPL-2.0-only
6 *
7 */
8
9 #ifndef _LTT_TRACKER_H
10 #define _LTT_TRACKER_H
11
12 #include <common/tracker.hpp>
13
14 #include <lttng/tracker.h>
15
16 struct process_attr_tracker;
17
18 enum process_attr_tracker_status {
19 PROCESS_ATTR_TRACKER_STATUS_OK,
20 PROCESS_ATTR_TRACKER_STATUS_ERROR,
21 PROCESS_ATTR_TRACKER_STATUS_EXISTS,
22 PROCESS_ATTR_TRACKER_STATUS_MISSING,
23 PROCESS_ATTR_TRACKER_STATUS_INVALID_TRACKING_POLICY,
24 };
25
26 struct process_attr_tracker *process_attr_tracker_create();
27 void process_attr_tracker_destroy(struct process_attr_tracker *tracker);
28
29 enum lttng_tracking_policy
30 process_attr_tracker_get_tracking_policy(const struct process_attr_tracker *tracker);
31 int process_attr_tracker_set_tracking_policy(struct process_attr_tracker *tracker,
32 enum lttng_tracking_policy tracking_policy);
33
34 enum process_attr_tracker_status
35 process_attr_tracker_inclusion_set_add_value(struct process_attr_tracker *tracker,
36 const struct process_attr_value *value);
37 enum process_attr_tracker_status
38 process_attr_tracker_inclusion_set_remove_value(struct process_attr_tracker *tracker,
39 const struct process_attr_value *value);
40
41 enum process_attr_tracker_status
42 process_attr_tracker_get_inclusion_set(const struct process_attr_tracker *tracker,
43 struct lttng_process_attr_values **values);
44
45 #endif /* _LTT_TRACKER_H */
This page took 0.036277 seconds and 4 git commands to generate.