File tree Expand file tree Collapse file tree 2 files changed +66
-0
lines changed
driver-core/src/main/java/com/datastax/driver/core/tracing Expand file tree Collapse file tree 2 files changed +66
-0
lines changed Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (C) 2021 ScyllaDB
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ package com .datastax .driver .core .tracing ;
18
+
19
+ /**
20
+ * An abstraction layer over instrumentation library API, corresponding to a logical span in the
21
+ * trace.
22
+ */
23
+ public interface TracingInfo {
24
+
25
+ /**
26
+ * Starts a span corresponding to this {@link TracingInfo} object. Must be called exactly once,
27
+ * before any other method, at the beginning of the traced execution.
28
+ *
29
+ * @param name the name given to the span being created.
30
+ */
31
+ void setNameAndStartTime (String name );
32
+
33
+ /** Must be always called exactly once at the logical end of traced execution. */
34
+ void tracingFinished ();
35
+ }
Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (C) 2021 ScyllaDB
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ package com .datastax .driver .core .tracing ;
18
+
19
+ /** Factory of trace info objects. */
20
+ public interface TracingInfoFactory {
21
+
22
+ /** Creates new trace info object, inheriting global context. */
23
+ TracingInfo buildTracingInfo ();
24
+
25
+ /**
26
+ * Creates new trace info object, inheriting context from provided another trace info object.
27
+ *
28
+ * @param parent the trace info object to be set as the parent of newly created trace info object.
29
+ */
30
+ TracingInfo buildTracingInfo (TracingInfo parent );
31
+ }
You can’t perform that action at this time.
0 commit comments