aboutsummaryrefslogtreecommitdiffstats
path: root/src/afb-trace.h
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2017-07-31 17:50:13 +0200
committerJosé Bollo <jose.bollo@iot.bzh>2017-08-08 11:55:36 +0200
commit4ecf37c1899349e6ef7ac08813ebb52fc80b2677 (patch)
tree88d6b940fc8e6f296ac2a93dfab32bba1711418d /src/afb-trace.h
parent330edf6a1ec91fa5a9829d6450fa4fff0b91c693 (diff)
afb-trace: Add tracing features to API monitor
This api allows to receive events when particular actions are reached. At the moment, tracing is bound to the API monitor and can trace anything. In the future, this will not be the case and the API monitor will only allow to trace requests of its session. The tracing of all will be available for supervision only. Change-Id: I880852612c2f77ff5329496b16c75fe602db4090 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src/afb-trace.h')
-rw-r--r--src/afb-trace.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/afb-trace.h b/src/afb-trace.h
new file mode 100644
index 00000000..c3d8ed2b
--- /dev/null
+++ b/src/afb-trace.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2016, 2017 "IoT.bzh"
+ * Author: José Bollo <jose.bollo@iot.bzh>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+#pragma once
+
+struct afb_trace;
+
+extern struct afb_trace *afb_trace_create(struct afb_daemon *daemon, struct afb_session *bound);
+extern void afb_trace_addref(struct afb_trace *trace);
+extern void afb_trace_unref(struct afb_trace *trace);
+
+
+extern int afb_trace_add(struct afb_req req, struct json_object *args, struct afb_trace *trace);
+extern int afb_trace_drop(struct afb_req req, struct json_object *args, struct afb_trace *trace);
+
+