blob: 40704ab4eb58a0f976bac696239402bb74a9f741 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
<?php
declare(strict_types=1);
namespace OpenTelemetry\SDK\Trace;
use OpenTelemetry\API\Trace as API;
use OpenTelemetry\SDK\Common\Instrumentation\InstrumentationScopeInterface;
/**
* @see https://github.com/open-telemetry/opentelemetry-specification/blob/v1.6.1/specification/trace/sdk.md#additional-span-interfaces
*/
interface ReadableSpanInterface
{
public function getName(): string;
public function getContext(): API\SpanContextInterface;
public function getParentContext(): API\SpanContextInterface;
public function getInstrumentationScope(): InstrumentationScopeInterface;
public function hasEnded(): bool;
/**
* Returns an immutable representation of this instance.
*/
public function toSpanData(): SpanDataInterface;
/**
* Returns the duration of the {@see API\SpanInterface} in nanoseconds.
* If still active, returns `now() - start`.
*/
public function getDuration(): int;
/**
* @see API\SpanKind
*/
public function getKind(): int;
/**
* Returns the value of the attribute with the provided *key*.
* Returns `null` if there are no attributes set, or no attribute with that key exists.
*
* @return mixed
*/
public function getAttribute(string $key);
}
|