Refactor Attributes (#623)
* Move Attribute classes to Common namespace * refactor AttributesTest * Move Attribute classes to Common namespace in examples * Introduce AttributeLimitsInterface * Fix bug in total added values calculation * Move compare test to correct test-class * Apply CS * Refactor Attributes * Fix attributes in Benchmark * Move AttributeLimits defaults to interface
This commit is contained in:
parent
1d6d717e0d
commit
940f67f1c7
|
|
@ -6,7 +6,7 @@ require __DIR__ . '/../vendor/autoload.php';
|
|||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOffSampler;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\TracerProvider;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
require __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
use OpenTelemetry\Contrib\Jaeger\Exporter as JaegerExporter;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
use OpenTelemetry\SDK\Trace\TracerProvider;
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ use OpenTelemetry\API\Trace as API;
|
|||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\Contrib\Newrelic\Exporter as NewrelicExporter;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ require __DIR__ . '/../vendor/autoload.php';
|
|||
use GuzzleHttp\Client;
|
||||
use GuzzleHttp\Psr7\HttpFactory;
|
||||
use OpenTelemetry\Contrib\OtlpHttp\Exporter as OTLPExporter;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
use OpenTelemetry\SDK\Trace\TracerProvider;
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
require __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
use OpenTelemetry\Contrib\OtlpGrpc\Exporter as OTLPGrpcExporter;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
use OpenTelemetry\SDK\Trace\TracerProvider;
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ use OpenTelemetry\API\Trace as API;
|
|||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\Contrib\OtlpGrpc\Exporter as OTLPExporter;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ use OpenTelemetry\API\Trace as API;
|
|||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\Contrib\OtlpGrpc\Exporter as OTLPExporter;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ require __DIR__ . '/../vendor/autoload.php';
|
|||
use GuzzleHttp\Client;
|
||||
use GuzzleHttp\Psr7\HttpFactory;
|
||||
use OpenTelemetry\Contrib\Zipkin\Exporter as ZipkinExporter;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
use OpenTelemetry\SDK\Trace\TracerProvider;
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ use OpenTelemetry\API\Trace as API;
|
|||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\Contrib\ZipkinToNewrelic\Exporter as ZipkinToNewrelicExporter;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
require __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\SpanExporter\ConsoleSpanExporter;
|
||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
||||
|
|
|
|||
|
|
@ -2,21 +2,17 @@
|
|||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OpenTelemetry\SDK;
|
||||
namespace OpenTelemetry\SDK\Common\Attribute;
|
||||
|
||||
class AttributeLimits
|
||||
final class AttributeLimits implements AttributeLimitsInterface
|
||||
{
|
||||
private const DEFAULT_COUNT_LIMIT = 128;
|
||||
|
||||
private const DEFAULT_VALUE_LENGTH_LIMIT = PHP_INT_MAX;
|
||||
|
||||
private int $attributeCountLimit;
|
||||
|
||||
private int $attributeValueLengthLimit;
|
||||
|
||||
public function __construct(
|
||||
int $attributeCountLimit = self::DEFAULT_COUNT_LIMIT,
|
||||
int $attributeValueLengthLimit = self::DEFAULT_VALUE_LENGTH_LIMIT
|
||||
int $attributeCountLimit = AttributeLimitsInterface::DEFAULT_COUNT_LIMIT,
|
||||
int $attributeValueLengthLimit = AttributeLimitsInterface::DEFAULT_VALUE_LENGTH_LIMIT
|
||||
) {
|
||||
$this->attributeCountLimit = $attributeCountLimit;
|
||||
$this->attributeValueLengthLimit = $attributeValueLengthLimit;
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OpenTelemetry\SDK\Common\Attribute;
|
||||
|
||||
interface AttributeLimitsInterface
|
||||
{
|
||||
public const DEFAULT_COUNT_LIMIT = 128;
|
||||
public const DEFAULT_VALUE_LENGTH_LIMIT = PHP_INT_MAX;
|
||||
|
||||
/** @return int Maximum allowed attribute count */
|
||||
public function getAttributeCountLimit(): int;
|
||||
|
||||
/** @return int Maximum allowed attribute value length */
|
||||
public function getAttributeValueLengthLimit(): int;
|
||||
}
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OpenTelemetry\SDK;
|
||||
namespace OpenTelemetry\SDK\Common\Attribute;
|
||||
|
||||
use function mb_substr;
|
||||
use Traversable;
|
||||
|
|
@ -11,17 +11,11 @@ class Attributes implements AttributesInterface
|
|||
{
|
||||
private array $attributes = [];
|
||||
|
||||
private AttributeLimits $attributeLimits;
|
||||
private AttributeLimitsInterface $attributeLimits;
|
||||
|
||||
private int $totalAddedAttributes = 0;
|
||||
|
||||
/** @return Attributes Returns a new instance of Attributes with the limits applied */
|
||||
public static function withLimits(iterable $attributes, AttributeLimits $attributeLimits): Attributes
|
||||
{
|
||||
return new self($attributes, $attributeLimits);
|
||||
}
|
||||
|
||||
public function __construct(iterable $attributes = [], AttributeLimits $attributeLimits = null)
|
||||
public function __construct(iterable $attributes = [], AttributeLimitsInterface $attributeLimits = null)
|
||||
{
|
||||
$this->attributeLimits = $attributeLimits ?? new AttributeLimits();
|
||||
foreach ($attributes as $key => $value) {
|
||||
|
|
@ -29,40 +23,44 @@ class Attributes implements AttributesInterface
|
|||
}
|
||||
}
|
||||
|
||||
/** @return Attributes Returns a new instance of Attributes with the limits applied */
|
||||
public static function withLimits(iterable $attributes, AttributeLimitsInterface $attributeLimits): Attributes
|
||||
{
|
||||
return new self($attributes, $attributeLimits);
|
||||
}
|
||||
|
||||
public function hasAttribute(string $name): bool
|
||||
{
|
||||
return isset($this->attributes[$name]);
|
||||
}
|
||||
|
||||
public function setAttribute(string $name, $value): AttributesInterface
|
||||
{
|
||||
// unset the attribute when null value is passed
|
||||
if ($value === null) {
|
||||
return $this->unsetAttribute($name);
|
||||
}
|
||||
|
||||
$this->totalAddedAttributes++;
|
||||
|
||||
// unset the attribute when null value is passed
|
||||
if (null === $value) {
|
||||
// drop attribute when limit is reached
|
||||
if (!$this->hasAttribute($name) && $this->isLimitReached()) {
|
||||
return $this;
|
||||
}
|
||||
|
||||
$this->attributes[$name] = $this->normalizeValue($value);
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function unsetAttribute(string $name): AttributesInterface
|
||||
{
|
||||
if ($this->hasAttribute($name)) {
|
||||
unset($this->attributes[$name]);
|
||||
|
||||
$this->totalAddedAttributes--;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
// drop attribute when limit is reached
|
||||
if (!isset($this->attributes[$name]) && count($this) >= $this->attributeLimits->getAttributeCountLimit()) {
|
||||
return $this;
|
||||
}
|
||||
|
||||
if (is_string($value)) {
|
||||
$limitedValue = mb_substr($value, 0, $this->attributeLimits->getAttributeValueLengthLimit());
|
||||
} elseif (is_array($value)) {
|
||||
$limitedValue = array_map(function ($arrayValue) {
|
||||
if (is_string($arrayValue)) {
|
||||
return mb_substr($arrayValue, 0, $this->attributeLimits->getAttributeValueLengthLimit());
|
||||
}
|
||||
|
||||
return $arrayValue;
|
||||
}, $value);
|
||||
} else {
|
||||
$limitedValue = $value;
|
||||
}
|
||||
|
||||
$this->attributes[$name] = $limitedValue;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
|
|
@ -98,4 +96,29 @@ class Attributes implements AttributesInterface
|
|||
{
|
||||
return $this->totalAddedAttributes - count($this);
|
||||
}
|
||||
|
||||
public function isLimitReached(): bool
|
||||
{
|
||||
return count($this) >= $this->attributeLimits->getAttributeCountLimit();
|
||||
}
|
||||
|
||||
private function truncateStringValue(string $value): string
|
||||
{
|
||||
return mb_substr($value, 0, $this->attributeLimits->getAttributeValueLengthLimit());
|
||||
}
|
||||
|
||||
private function normalizeValue($value)
|
||||
{
|
||||
if (is_string($value)) {
|
||||
return $this->truncateStringValue($value);
|
||||
}
|
||||
|
||||
if (is_array($value)) {
|
||||
return array_map(function ($value) {
|
||||
return $this->normalizeValue($value);
|
||||
}, $value);
|
||||
}
|
||||
|
||||
return $value;
|
||||
}
|
||||
}
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OpenTelemetry\SDK;
|
||||
namespace OpenTelemetry\SDK\Common\Attribute;
|
||||
|
||||
use Countable;
|
||||
use IteratorAggregate;
|
||||
|
|
@ -11,6 +11,8 @@ use Traversable;
|
|||
interface AttributesInterface extends IteratorAggregate, Countable
|
||||
{
|
||||
public function setAttribute(string $name, $value): AttributesInterface;
|
||||
public function unsetAttribute(string $name): AttributesInterface;
|
||||
public function hasAttribute(string $name): bool;
|
||||
public function get(string $name);
|
||||
|
||||
public function getIterator(): Traversable;
|
||||
|
|
@ -18,4 +20,6 @@ interface AttributesInterface extends IteratorAggregate, Countable
|
|||
|
||||
public function getTotalAddedValues(): int;
|
||||
public function getDroppedAttributesCount(): int;
|
||||
|
||||
public function isLimitReached(): bool;
|
||||
}
|
||||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\SDK\Resource\Detectors;
|
|||
|
||||
use function class_exists;
|
||||
use Composer\InstalledVersions;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\SDK\Resource\Detectors;
|
||||
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Environment\EnvironmentVariablesTrait;
|
||||
use OpenTelemetry\SDK\Common\Environment\Variables as Env;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\SDK\Resource\Detectors;
|
||||
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\SDK\Resource\Detectors;
|
||||
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\SDK\Resource\Detectors;
|
|||
|
||||
use function extension_loaded;
|
||||
use function getmypid;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\SDK\Resource\Detectors;
|
||||
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\SDK\Resource\Detectors;
|
|||
|
||||
use function class_exists;
|
||||
use Composer\InstalledVersions;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\SDK\Resource\Detectors;
|
||||
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceDetectorInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Resource;
|
||||
|
||||
use function in_array;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Environment\Accessor;
|
||||
use OpenTelemetry\SDK\Common\Environment\KnownValues as Values;
|
||||
use OpenTelemetry\SDK\Common\Environment\Variables as Env;
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace;
|
||||
|
||||
use function count;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
|
||||
final class Event implements EventInterface
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
|
||||
interface EventInterface
|
||||
{
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\SDK\Trace;
|
|||
|
||||
use function max;
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@ namespace OpenTelemetry\SDK\Trace;
|
|||
|
||||
use function count;
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
|
||||
final class Link implements LinkInterface
|
||||
{
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\API\Trace\SpanContextInterface;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
|
||||
interface LinkInterface
|
||||
{
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace\Sampler;
|
||||
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplerInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\Span;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace\Sampler;
|
||||
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplerInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\Span;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace\Sampler;
|
||||
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplerInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\Span;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\SDK\Trace\Sampler;
|
|||
|
||||
use InvalidArgumentException;
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplerInterface;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use OpenTelemetry\SDK\Trace\Span;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
|
||||
/**
|
||||
* This interface is used to organize sampling logic.
|
||||
|
|
@ -22,7 +22,7 @@ interface SamplerInterface
|
|||
* Typically in situations when the Span to be created starts a new Trace.
|
||||
* @param string $spanName Name of the Span to be created.
|
||||
* @param int $spanKind Span kind.
|
||||
* @param AttributesInterface|null $attributes Initial set of Attributes for the Span being constructed.
|
||||
* @param \OpenTelemetry\SDK\Common\Attribute\AttributesInterface|null $attributes Initial set of Attributes for the Span being constructed.
|
||||
* @param list<LinkInterface> $links Collection of links that will be associated with the Span to be created.
|
||||
* Typically, useful for batch operations.
|
||||
* @see https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/overview.md#links-between-spans
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
|
||||
final class SamplingResult
|
||||
{
|
||||
|
|
|
|||
|
|
@ -14,9 +14,9 @@ use function in_array;
|
|||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use function sprintf;
|
||||
|
|
|
|||
|
|
@ -7,9 +7,9 @@ namespace OpenTelemetry\SDK\Trace;
|
|||
use function in_array;
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
|
||||
final class SpanBuilder implements API\SpanBuilderInterface
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\SDK\Trace\SpanExporter;
|
|||
|
||||
use OpenTelemetry\API\Trace\SpanContextInterface;
|
||||
use OpenTelemetry\API\Trace\SpanKind;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\EventInterface;
|
||||
use OpenTelemetry\SDK\Trace\LinkInterface;
|
||||
|
|
@ -114,7 +114,7 @@ class FriendlySpanConverter implements SpanConverterInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @param AttributesInterface $attributes
|
||||
* @param \OpenTelemetry\SDK\Common\Attribute\AttributesInterface $attributes
|
||||
* @return array
|
||||
*/
|
||||
private function convertAttributes(AttributesInterface $attributes): array
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\SDK\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributeLimits;
|
||||
|
||||
final class SpanLimits
|
||||
{
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ use OpenTelemetry\API\Trace\TracerInterface;
|
|||
use OpenTelemetry\Contrib\OtlpGrpc\Exporter as GrpcExporter;
|
||||
use OpenTelemetry\Contrib\OtlpHttp\Exporter as HttpExporter;
|
||||
use Opentelemetry\Proto\Collector\Trace\V1\TraceServiceClient;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
|
||||
use OpenTelemetry\SDK\Trace\SamplerInterface;
|
||||
|
|
|
|||
|
|
@ -10,8 +10,8 @@ use Mockery\MockInterface;
|
|||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\API\Trace\SpanContext;
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Trace\Link;
|
||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOffSampler;
|
||||
use OpenTelemetry\SDK\Trace\SamplerInterface;
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ namespace OpenTelemetry\Tests\API\Unit\Trace;
|
|||
use Exception;
|
||||
use OpenTelemetry\API\Trace\NonRecordingSpan;
|
||||
use OpenTelemetry\API\Trace\SpanContextInterface;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ use OpenTelemetry\API\Trace\SpanContext;
|
|||
use OpenTelemetry\API\Trace\SpanKind;
|
||||
use OpenTelemetry\API\Trace\StatusCode;
|
||||
use OpenTelemetry\Contrib\Jaeger\SpanConverter;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\Event;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\Tests\Unit\Contrib;
|
||||
|
||||
use OpenTelemetry\Contrib\Newrelic\SpanConverter;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\Tests\Unit\SDK\Util\SpanData;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ use Opentelemetry\Proto\Trace\V1;
|
|||
use Opentelemetry\Proto\Trace\V1\InstrumentationLibrarySpans;
|
||||
use Opentelemetry\Proto\Trace\V1\ResourceSpans;
|
||||
use Opentelemetry\Proto\Trace\V1\Span\SpanKind as ProtoSpanKind;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\StatusData;
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ use OpenTelemetry\API\Trace\SpanKind;
|
|||
use OpenTelemetry\API\Trace\StatusCode;
|
||||
use OpenTelemetry\Contrib\Zipkin\SpanConverter;
|
||||
use OpenTelemetry\Contrib\Zipkin\SpanKind as ZipkinSpanKind;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\StatusData;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\Tests\Unit\Contrib;
|
|||
|
||||
use function implode;
|
||||
use OpenTelemetry\Contrib\ZipkinToNewrelic\SpanConverter;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\Tests\Unit\SDK\Util\SpanData;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
|
|
|||
|
|
@ -1,28 +0,0 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OpenTelemetry\Tests\Unit\SDK;
|
||||
|
||||
use OpenTelemetry\SDK\AttributeLimits;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* @covers OpenTelemetry\SDK\AttributeLimits
|
||||
*/
|
||||
class AttributeLimitsTest extends TestCase
|
||||
{
|
||||
public function test_default_limits(): void
|
||||
{
|
||||
$limits = new AttributeLimits();
|
||||
$this->assertNotNull($limits->getAttributeCountLimit());
|
||||
$this->assertNotNull($limits->getAttributeValueLengthLimit());
|
||||
}
|
||||
|
||||
public function test_limits(): void
|
||||
{
|
||||
$limits = new AttributeLimits(10, 20);
|
||||
$this->assertSame(10, $limits->getAttributeCountLimit());
|
||||
$this->assertSame(20, $limits->getAttributeValueLengthLimit());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OpenTelemetry\Tests\Unit\SDK\Common\Attribute;
|
||||
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributeLimitsInterface;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* @covers \OpenTelemetry\SDK\Common\Attribute\AttributeLimits
|
||||
*/
|
||||
class AttributeLimitsTest extends TestCase
|
||||
{
|
||||
public function test_compare(): void
|
||||
{
|
||||
$attrLimits1 = new AttributeLimits(10, 20);
|
||||
$attrLimits2 = new AttributeLimits(10, 20);
|
||||
$attrLimits3 = new AttributeLimits(20, 30);
|
||||
|
||||
$this->assertEquals($attrLimits1, $attrLimits2);
|
||||
$this->assertNotEquals($attrLimits1, $attrLimits3);
|
||||
}
|
||||
|
||||
public function test_default_limits(): void
|
||||
{
|
||||
$limits = new AttributeLimits();
|
||||
$this->assertSame(AttributeLimitsInterface::DEFAULT_COUNT_LIMIT, $limits->getAttributeCountLimit());
|
||||
$this->assertSame(AttributeLimitsInterface::DEFAULT_VALUE_LENGTH_LIMIT, $limits->getAttributeValueLengthLimit());
|
||||
}
|
||||
|
||||
public function test_limits(): void
|
||||
{
|
||||
$limits = new AttributeLimits(10, 20);
|
||||
$this->assertSame(10, $limits->getAttributeCountLimit());
|
||||
$this->assertSame(20, $limits->getAttributeValueLengthLimit());
|
||||
}
|
||||
}
|
||||
|
|
@ -2,35 +2,38 @@
|
|||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OpenTelemetry\Tests\Unit\SDK;
|
||||
namespace OpenTelemetry\Tests\Unit\SDK\Common\Attribute;
|
||||
|
||||
use OpenTelemetry\SDK\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributeLimits;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* @covers OpenTelemetry\SDK\Attributes
|
||||
* @covers \OpenTelemetry\SDK\Common\Attribute\Attributes
|
||||
*/
|
||||
class AttributesTest extends TestCase
|
||||
{
|
||||
public function test_attribute_limits_compare(): void
|
||||
public function test_has_attribute(): void
|
||||
{
|
||||
$attrLimits1 = new AttributeLimits(10, 20);
|
||||
$attrLimits2 = new AttributeLimits(10, 20);
|
||||
$attrLimits3 = new AttributeLimits(20, 30);
|
||||
$attributes = new Attributes([
|
||||
'foo' => 'foo',
|
||||
]);
|
||||
|
||||
$this->assertTrue($attrLimits1 == $attrLimits2);
|
||||
$this->assertTrue($attrLimits1 != $attrLimits3);
|
||||
$this->assertFalse($attributes->hasAttribute('bar'));
|
||||
|
||||
$attributes->setAttribute('bar', 'bar');
|
||||
|
||||
$this->assertTrue($attributes->hasAttribute('bar'));
|
||||
}
|
||||
|
||||
/** @test Test numeric attribute key is not cast to integer value */
|
||||
/** Test numeric attribute key is not cast to integer value */
|
||||
public function test_numeric_attribute_name(): void
|
||||
{
|
||||
$attributes = new Attributes(['1' => '2']);
|
||||
$this->assertCount(1, $attributes);
|
||||
foreach ($attributes as $key => $value) {
|
||||
$this->assertTrue(is_string($key));
|
||||
$this->assertTrue(is_string($value));
|
||||
$this->assertIsString($key);
|
||||
$this->assertIsString($value);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -39,7 +42,6 @@ class AttributesTest extends TestCase
|
|||
*/
|
||||
public function test_attribute_limits(): void
|
||||
{
|
||||
$boolValue = true;
|
||||
$intValue = 42;
|
||||
$floatValue = 3.14;
|
||||
$shortStringValue = '0123';
|
||||
|
|
@ -48,7 +50,7 @@ class AttributesTest extends TestCase
|
|||
|
||||
$attributeLimits = new AttributeLimits(6, 16);
|
||||
$attributes = new Attributes([
|
||||
'bool' => $boolValue,
|
||||
'bool' => true,
|
||||
'int' => $intValue,
|
||||
'float' => $floatValue,
|
||||
'short_string' => $shortStringValue,
|
||||
|
|
@ -56,18 +58,17 @@ class AttributesTest extends TestCase
|
|||
'array' => [
|
||||
$shortStringValue,
|
||||
$longStringValue,
|
||||
$boolValue,
|
||||
true,
|
||||
],
|
||||
'ignored_key' => 'ignored_value',
|
||||
], $attributeLimits);
|
||||
|
||||
$this->assertEquals($boolValue, $attributes->get('bool'));
|
||||
$this->assertTrue($attributes->get('bool'));
|
||||
$this->assertEquals($intValue, $attributes->get('int'));
|
||||
$this->assertEquals($floatValue, $attributes->get('float'));
|
||||
$this->assertEquals($shortStringValue, $attributes->get('short_string'));
|
||||
$this->assertEquals($longStringTrimmed, $attributes->get('long_string'));
|
||||
$this->assertEquals([$shortStringValue, $longStringTrimmed, $boolValue], $attributes->get('array'));
|
||||
|
||||
$this->assertEquals([$shortStringValue, $longStringTrimmed, true], $attributes->get('array'));
|
||||
$this->assertEquals(6, $attributes->count());
|
||||
$this->assertNull($attributes->get('ignored_key'));
|
||||
}
|
||||
|
|
@ -111,6 +112,7 @@ class AttributesTest extends TestCase
|
|||
$attributes->setAttribute('bar', null);
|
||||
$this->assertCount(1, $attributes);
|
||||
}
|
||||
|
||||
public function test_to_array(): void
|
||||
{
|
||||
$values = [
|
||||
|
|
@ -119,6 +121,69 @@ class AttributesTest extends TestCase
|
|||
];
|
||||
$attributes = new Attributes($values);
|
||||
$this->assertSame($values, $attributes->toArray());
|
||||
}
|
||||
|
||||
public function test_get_total_added_values(): void
|
||||
{
|
||||
$attributes = new Attributes([
|
||||
'foo' => 'foo',
|
||||
'bar' => 'bar',
|
||||
]);
|
||||
$this->assertEquals(2, $attributes->getTotalAddedValues());
|
||||
|
||||
$attributes->setAttribute('baz', 'baz');
|
||||
$this->assertEquals(3, $attributes->getTotalAddedValues());
|
||||
}
|
||||
|
||||
public function test_unset_get_total_added_values(): void
|
||||
{
|
||||
$attributes = new Attributes([
|
||||
'foo' => 'foo',
|
||||
'bar' => 'bar',
|
||||
]);
|
||||
$this->assertEquals(2, $attributes->getTotalAddedValues());
|
||||
|
||||
$attributes->unsetAttribute('foo');
|
||||
$this->assertEquals(1, $attributes->getTotalAddedValues());
|
||||
}
|
||||
|
||||
public function test_limit_get_total_added_values(): void
|
||||
{
|
||||
$attributes = new Attributes([
|
||||
'foo' => 'foo',
|
||||
'bar' => 'bar',
|
||||
], new AttributeLimits(1));
|
||||
$this->assertEquals(2, $attributes->getTotalAddedValues());
|
||||
|
||||
$attributes->setAttribute('baz', 'baz');
|
||||
$this->assertEquals(3, $attributes->getTotalAddedValues());
|
||||
}
|
||||
|
||||
public function test_count_dropped_attributes(): void
|
||||
{
|
||||
$attributes = new Attributes([
|
||||
'foo' => 'foo',
|
||||
'bar' => 'bar',
|
||||
], new AttributeLimits(1));
|
||||
|
||||
$this->assertEquals(1, $attributes->getTotalAddedValues() - count($attributes));
|
||||
|
||||
$attributes->setAttribute('baz', 'baz');
|
||||
|
||||
$this->assertEquals(2, $attributes->getTotalAddedValues() - count($attributes));
|
||||
}
|
||||
|
||||
public function test_is_limit_reached(): void
|
||||
{
|
||||
$attributes = new Attributes([
|
||||
'foo' => 'foo',
|
||||
'bar' => 'bar',
|
||||
], new AttributeLimits(3));
|
||||
|
||||
$this->assertFalse($attributes->isLimitReached());
|
||||
|
||||
$attributes->setAttribute('baz', 'baz');
|
||||
|
||||
$this->assertTrue($attributes->isLimitReached());
|
||||
}
|
||||
}
|
||||
|
|
@ -7,7 +7,7 @@ namespace OpenTelemetry\Tests\Unit\SDK\Resource;
|
|||
use AssertWell\PHPUnitGlobalState\EnvironmentVariables;
|
||||
use Composer\InstalledVersions;
|
||||
use InvalidArgumentException;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Resource\Detectors;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace OpenTelemetry\Tests\Unit\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Trace\Event;
|
||||
use OpenTelemetry\Tests\Unit\SDK\Util\TestClock;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ namespace OpenTelemetry\Tests\Unit\SDK\Trace;
|
|||
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\API\Trace\SpanKind;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\ImmutableSpan;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\Tests\Unit\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Trace\Link;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
namespace OpenTelemetry\Tests\Unit\SDK\Trace;
|
||||
|
||||
use OpenTelemetry\API\Trace\TraceStateInterface;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Trace\SamplingResult;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ namespace OpenTelemetry\Tests\Unit\SDK\Trace\SpanExporter;
|
|||
use OpenTelemetry\API\Trace\SpanContextInterface;
|
||||
use OpenTelemetry\API\Trace\SpanKind;
|
||||
use OpenTelemetry\API\Trace\TraceStateInterface;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\EventInterface;
|
||||
use OpenTelemetry\SDK\Trace\LinkInterface;
|
||||
|
|
|
|||
|
|
@ -14,9 +14,9 @@ use OpenTelemetry\API\Trace\NonRecordingSpan;
|
|||
use OpenTelemetry\API\Trace\SpanContext;
|
||||
use OpenTelemetry\Context\Context;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\ClockInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace\Event;
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ use function count;
|
|||
use function max;
|
||||
use OpenTelemetry\API\Trace as API;
|
||||
use OpenTelemetry\SDK\AbstractClock;
|
||||
use OpenTelemetry\SDK\Attributes;
|
||||
use OpenTelemetry\SDK\AttributesInterface;
|
||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
||||
use OpenTelemetry\SDK\Common\Attribute\AttributesInterface;
|
||||
use OpenTelemetry\SDK\InstrumentationLibrary;
|
||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
||||
use OpenTelemetry\SDK\Trace as SDK;
|
||||
|
|
|
|||
Loading…
Reference in New Issue