summaryrefslogtreecommitdiff
path: root/vendor/opentracing/opentracing
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/opentracing/opentracing')
-rw-r--r--vendor/opentracing/opentracing/.github/ISSUE_TEMPLATE.md21
-rw-r--r--vendor/opentracing/opentracing/.github/PULL_REQUEST_TEMPLATE.md24
-rw-r--r--vendor/opentracing/opentracing/.github/workflows/ci.yml44
-rw-r--r--vendor/opentracing/opentracing/.gitignore4
-rw-r--r--vendor/opentracing/opentracing/CONTRIBUTING.md75
-rw-r--r--vendor/opentracing/opentracing/LICENSE201
-rw-r--r--vendor/opentracing/opentracing/README.md306
-rw-r--r--vendor/opentracing/opentracing/composer.json44
-rw-r--r--vendor/opentracing/opentracing/phpstan.neon5
-rw-r--r--vendor/opentracing/opentracing/phpunit.xml27
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Formats.php49
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/GlobalTracer.php60
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/InvalidReferenceArgumentException.php33
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/InvalidReferencesSetException.php30
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/InvalidSpanOptionException.php131
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScope.php62
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScopeManager.php49
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpan.php145
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpanContext.php100
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Mock/MockTracer.php152
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/NoopScope.php23
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/NoopScopeManager.php24
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/NoopSpan.php67
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/NoopSpanContext.php35
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/NoopTracer.php62
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Reference.php77
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Scope.php32
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/ScopeManager.php40
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Span.php95
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/SpanContext.php37
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/StartSpanOptions.php206
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Tags.php124
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/Tracer.php119
-rw-r--r--vendor/opentracing/opentracing/src/OpenTracing/UnsupportedFormatException.php22
-rw-r--r--vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockScopeManagerTest.php63
-rw-r--r--vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanContextTest.php54
-rw-r--r--vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanTest.php52
-rw-r--r--vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockTracerTest.php139
-rw-r--r--vendor/opentracing/opentracing/tests/OpenTracing/ReferenceTest.php45
-rw-r--r--vendor/opentracing/opentracing/tests/OpenTracing/StartSpanOptionsTest.php129
40 files changed, 0 insertions, 3007 deletions
diff --git a/vendor/opentracing/opentracing/.github/ISSUE_TEMPLATE.md b/vendor/opentracing/opentracing/.github/ISSUE_TEMPLATE.md
deleted file mode 100644
index f99dd606b..000000000
--- a/vendor/opentracing/opentracing/.github/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,21 +0,0 @@
-<!--
-Welcome to the OpenTracing PHP repo! 👋🎉
-
-- Please search for existing issues in order to ensure we don't have duplicate bugs/feature requests.)
-- Please be respectful and considerate of others when commenting on issues)
-- Please provide as much information as possible so we all understand the issue.)
-- Please don't ask questions here. If you have any question head to our gitter chat https://gitter.im/opentracing/opentracing-php
--->
-
-
-## Background
-Something that gives context about why this is an issue.
-
-## Problem
-Describe the problem. If the issue is about an improvement you can skip this. If possible, include a description of the impact of the problem.
-
-## Proposal
-A proposal that from your POV would solve the problem or improve the existing situation. It should also include the impact.
-
-## Questions to address
-Questions that should be answered as outcome of this issue.
diff --git a/vendor/opentracing/opentracing/.github/PULL_REQUEST_TEMPLATE.md b/vendor/opentracing/opentracing/.github/PULL_REQUEST_TEMPLATE.md
deleted file mode 100644
index d81c08379..000000000
--- a/vendor/opentracing/opentracing/.github/PULL_REQUEST_TEMPLATE.md
+++ /dev/null
@@ -1,24 +0,0 @@
-<!--
-We appreciate the effort for this pull request but before that please make sure you read the contribution guidelines given above, then fill out the blanks below.
-
-Please don't open huge pull requests and keep one pull request solving one problem.
-
-Please enter the issue number you are resolving in your PR after one of the following words [Fixes, Closes, Resolves]. This will auto-link these issues and close them when this PR is merged!
-e.g.
-Fixes #1
-Closes #2
--->
-
-### Short description of what this PR does:
--
--
-
-### Checklist
-- [ ] I have made a material change to the repo (functionality, testing, spelling, grammar)
-- [ ] I have read the [Contribution Guide] and my PR follows them.
-- [ ] I updated my branch with the master branch.
-- [ ] I have added tests that prove my fix is effective or that my feature works
-- [ ] I have added necessary documentation about the functionality in the appropriate .md file
-- [ ] I have added in line documentation to the code I modified
-
-Closes # \ No newline at end of file
diff --git a/vendor/opentracing/opentracing/.github/workflows/ci.yml b/vendor/opentracing/opentracing/.github/workflows/ci.yml
deleted file mode 100644
index 8fba7baf8..000000000
--- a/vendor/opentracing/opentracing/.github/workflows/ci.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-name: Build
-on:
- push:
- branches:
- - master
- paths-ignore:
- - "**/*.md"
- - "LICENSE"
- pull_request:
-jobs:
- test:
- name: OpenTracing (PHP version ${{ matrix.php-versions }} on ${{ matrix.operating-system }})
- runs-on: ${{ matrix.operating-system }}
- strategy:
- fail-fast: false
- matrix:
- operating-system: [ubuntu-latest, windows-latest, macos-latest]
- php-versions: ["7.1", "7.2", "7.3", "7.4", "8.0", "8.1"]
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- - name: Setup PHP, with composer and extensions
- uses: shivammathur/setup-php@v2 #https://github.com/shivammathur/setup-php
- with:
- php-version: ${{ matrix.php-versions }}
- - name: Get composer cache directory
- id: composer-cache
- run: echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache composer dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
- restore-keys: ${{ runner.os }}-composer-
- - name: Install Composer dependencies
- run: |
- composer install --no-progress --prefer-dist --optimize-autoloader
- - name: Run lint
- if: matrix.operating-system != 'windows-latest'
- run: composer lint
- - name: Run static check
- run: composer static-check
- - name: Run tests
- run: composer test
diff --git a/vendor/opentracing/opentracing/.gitignore b/vendor/opentracing/opentracing/.gitignore
deleted file mode 100644
index 56e80855d..000000000
--- a/vendor/opentracing/opentracing/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-.idea/
-.phpunit.result.cache
-composer.lock
-vendor \ No newline at end of file
diff --git a/vendor/opentracing/opentracing/CONTRIBUTING.md b/vendor/opentracing/opentracing/CONTRIBUTING.md
deleted file mode 100644
index a13c0fe1d..000000000
--- a/vendor/opentracing/opentracing/CONTRIBUTING.md
+++ /dev/null
@@ -1,75 +0,0 @@
-Contributing
-============
-
-Thank you for contributing to this project!
-
-Bug reports
------------
-
-If you find a bug, please submit an issue. Try to be as detailed as possible
-in your problem description to help us fix the bug.
-
-Feature requests
-----------------
-
-If you wish to propose a feature, please submit an issue. Try to explain your
-use case as fully as possible to help us understand why you think the feature
-should be added.
-
-License
--------
-
-By contributing your code, you agree to license your contribution under the terms of the APLv2:
-https://github.com/opentracing/opentracing-php/blob/master/LICENSE
-
-All files are released with the Apache 2.0 license.
-
-Creating a pull request (PR)
-----------------------------
-
-First [fork the repository](https://help.github.com/articles/fork-a-repo/) on
-GitHub.
-
-Then clone your fork:
-
-```bash
-$ git clone https://github.com/your-name/opentracing-php.git
-$ git checkout -b bug-or-feature-description
-```
-
-And install the dependencies:
-
-```bash
-$ composer install
-```
-
-Write your code and add tests. Then run the static check and the tests:
-
-```bash
-$ composer run static-check
-$ composer run test
-```
-
-Commit your changes and push them to GitHub:
-
-```bash
-$ git commit -m "Fix nasty bug"
-$ git push -u origin bug-or-feature-description
-```
-
-Then [create a pull request](https://help.github.com/articles/creating-a-pull-request/)
-on GitHub.
-
-If you need to make some changes, commit and push them as you like. When asked
-to squash your commits, do so as follows:
-
-```bash
-git rebase -i
-git push origin bug-or-feature-description -f
-```
-
-Coding standard
----------------
-
-This project follows the [PSR-2](http://www.php-fig.org/psr/psr-2/) coding style.
-Please make sure your pull requests adhere to this standard.
diff --git a/vendor/opentracing/opentracing/LICENSE b/vendor/opentracing/opentracing/LICENSE
deleted file mode 100644
index 8dada3eda..000000000
--- a/vendor/opentracing/opentracing/LICENSE
+++ /dev/null
@@ -1,201 +0,0 @@
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "{}"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright {yyyy} {name of copyright owner}
-
- 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.
diff --git a/vendor/opentracing/opentracing/README.md b/vendor/opentracing/opentracing/README.md
deleted file mode 100644
index ce03bc951..000000000
--- a/vendor/opentracing/opentracing/README.md
+++ /dev/null
@@ -1,306 +0,0 @@
-# OpenTracing API for PHP
-
-[![Build](https://github.com/opentracing/opentracing-php/actions/workflows/ci.yml/badge.svg)](https://github.com/opentracing/opentracing-php/actions/workflows/ci.yml)
-[![OpenTracing Badge](https://img.shields.io/badge/OpenTracing-enabled-blue.svg)](http://opentracing.io)
-[![Total Downloads](https://poser.pugx.org/opentracing/opentracing/downloads)](https://packagist.org/packages/opentracing/opentracing)
-[![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%205.6-8892BF.svg)](https://php.net/)
-[![License](https://img.shields.io/github/license/opentracing/opentracing-php.svg)](https://github.com/opentracing/opentracing-php/blob/master/LICENSE)
-[![Join the chat at https://gitter.im/opentracing/opentracing-php](https://badges.gitter.im/opentracing/opentracing-php.svg)](https://gitter.im/opentracing/opentracing-php?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
-
-PHP library for the OpenTracing's API.
-
-## Required Reading
-
-In order to understand the library, one must first be familiar with the
-[OpenTracing project](http://opentracing.io) and
-[specification](http://opentracing.io/documentation/pages/spec.html) more specifically.
-
-## Installation
-
-OpenTracing-PHP can be installed via Composer:
-
-```bash
-composer require opentracing/opentracing
-```
-
-## Usage
-
-When consuming this library one really only need to worry about a couple of key
-abstractions: the `Tracer::startActiveSpan` and `Tracer::startSpan` method,
-the `Span` interface, the `Scope` interface and binding a `Tracer` at bootstrap time. Here are code snippets
-demonstrating some important use cases:
-
-### Singleton initialization
-
-The simplest starting point is to set the global tracer. As early as possible, do:
-
-```php
-use OpenTracing\GlobalTracer;
-
-GlobalTracer::set(new MyTracerImplementation());
-```
-
-### Creating a Span given an existing Request
-
-To start a new `Span`, you can use the `startSpan` method.
-
-```php
-use OpenTracing\Formats;
-use OpenTracing\GlobalTracer;
-
-...
-
-// extract the span context
-$spanContext = GlobalTracer::get()->extract(
- Formats\HTTP_HEADERS,
- getallheaders()
-);
-
-function doSomething() {
- ...
-
- // start a new span called 'my_span' and make it a child of the $spanContext
- $span = GlobalTracer::get()->startSpan('my_span', ['child_of' => $spanContext]);
-
- ...
-
- // add some logs to the span
- $span->log([
- 'event' => 'soft error',
- 'type' => 'cache timeout',
- 'waiter.millis' => 1500,
- ])
-
- // finish the the span
- $span->finish();
-}
-```
-
-### Starting a new trace by creating a "root span"
-
-It's always possible to create a "root" `Span` with no parent or other causal reference.
-
-```php
-$span = $tracer->startSpan('my_first_span');
-...
-$span->finish();
-```
-
-### Active Spans and Scope Manager
-
-For most use cases, it is recommended that you use the `Tracer::startActiveSpan` function for
-creating new spans.
-
-An example of a linear, two level deep span tree using active spans looks like
-this in PHP code:
-```php
-// At dispatcher level
-$scope = $tracer->startActiveSpan('request');
-...
-$scope->close();
-```
-```php
-// At controller level
-$scope = $tracer->startActiveSpan('controller');
-...
-$scope->close();
-```
-
-```php
-// At RPC calls level
-$scope = $tracer->startActiveSpan('http');
-file_get_contents('http://php.net');
-$scope->close();
-```
-
-When using the `Tracer::startActiveSpan` function the underlying tracer uses an
-abstraction called scope manager to keep track of the currently active span.
-
-Starting an active span will always use the currently active span as a parent.
-If no parent is available, then the newly created span is considered to be the
-root span of the trace.
-
-Unless you are using asynchronous code that tracks multiple spans at the same
-time, such as when using cURL Multi Exec or MySQLi Polling it is recommended that you
-use `Tracer::startActiveSpan` everywhere in your application.
-
-The currently active span gets automatically finished when you call `$scope->close()`
-as you can see in the previous examples.
-
-If you don't want a span to automatically close when `$scope->close()` is called
-then you must specify `'finish_span_on_close'=> false,` in the `$options`
-argument of `startActiveSpan`.
-
-#### Creating a child span assigning parent manually
-
-```php
-$parent = GlobalTracer::get()->startSpan('parent');
-
-$child = GlobalTracer::get()->startSpan('child', [
- 'child_of' => $parent
-]);
-
-...
-
-$child->finish();
-
-...
-
-$parent->finish();
-```
-
-#### Creating a child span using automatic active span management
-
-Every new span will take the active span as parent and it will take its spot.
-
-```php
-$parent = GlobalTracer::get()->startActiveSpan('parent');
-
-...
-
-/*
- * Since the parent span has been created by using startActiveSpan we don't need
- * to pass a reference for this child span
- */
-$child = GlobalTracer::get()->startActiveSpan('my_second_span');
-
-...
-
-$child->close();
-
-...
-
-$parent->close();
-```
-
-### Serializing to the wire
-
-```php
-use GuzzleHttp\Client;
-use OpenTracing\Formats;
-
-...
-
-$tracer = GlobalTracer::get();
-
-$spanContext = $tracer->extract(
- Formats\HTTP_HEADERS,
- getallheaders()
-);
-
-try {
- $span = $tracer->startSpan('my_span', ['child_of' => $spanContext]);
-
- $client = new Client;
-
- $headers = [];
-
- $tracer->inject(
- $span->getContext(),
- Formats\HTTP_HEADERS,
- $headers
- );
-
- $request = new \GuzzleHttp\Psr7\Request('GET', 'http://myservice', $headers);
- $client->send($request);
- ...
-
-} catch (\Exception $e) {
- ...
-}
-...
-```
-
-### Deserializing from the wire
-
-When using http header for context propagation you can use either the `Request` or the `$_SERVER`
-variable:
-
-```php
-use OpenTracing\GlobalTracer;
-use OpenTracing\Formats;
-
-$tracer = GlobalTracer::get();
-$spanContext = $tracer->extract(Formats\HTTP_HEADERS, getallheaders());
-$tracer->startSpan('my_span', [
- 'child_of' => $spanContext,
-]);
-```
-
-### Flushing Spans
-
-PHP as a request scoped language has no simple means to pass the collected spans
-data to a background process without blocking the main request thread/process.
-The OpenTracing API makes no assumptions about this, but for PHP that might
-cause problems for Tracer implementations. This is why the PHP API contains a
-`flush` method that allows to trigger a span sending out of process.
-
-```php
-use OpenTracing\GlobalTracer;
-
-$application->run();
-
-register_shutdown_function(function() {
- /* Flush the tracer to the backend */
- $tracer = GlobalTracer::get();
- $tracer->flush();
-});
-```
-
-This is optional, tracers can decide to immediately send finished spans to a
-backend. The flush call can be implemented as a NO-OP for these tracers.
-
-### Using `StartSpanOptions`
-
-Passing options to the pass can be done using either an array or the
-SpanOptions wrapper object. The following keys are valid:
-
-- `start_time` is a float, int or `\DateTime` representing a timestamp with arbitrary precision.
-- `child_of` is an object of type `OpenTracing\SpanContext` or `OpenTracing\Span`.
-- `references` is an array of `OpenTracing\Reference`.
-- `tags` is an array with string keys and scalar values that represent OpenTracing tags.
-- `finish_span_on_close` is a boolean that determines whether a span should be finished or not when the
-scope is closed.
-
-```php
-$span = $tracer->startActiveSpan('my_span', [
- 'child_of' => $spanContext,
- 'tags' => ['foo' => 'bar'],
- 'start_time' => time(),
-]);
-```
-
-### Propagation Formats
-
-The propagation formats should be implemented consistently across all tracers.
-If you want to implement your own format, then don't reuse the existing constants.
-Tracers will throw an exception if the requested format is not handled by them.
-
-- `Tracer::FORMAT_TEXT_MAP` should represent the span context as a key value map. There is no
- assumption about the semantics where the context is coming from and sent to.
-
-- `Tracer::FORMAT_HTTP_HEADERS` should represent the span context as HTTP header lines
- in an array list. For two context details "Span-Id" and "Trace-Id", the
- result would be `['Span-Id: abc123', 'Trace-Id: def456']`. This definition can be
- passed directly to `curl` and `file_get_contents`.
-
-- `Tracer::FORMAT_BINARY` makes no assumptions about the data format other than it is
- proprietary and each Tracer can handle it as it wants.
-
-## Mock implementation
-
-OpenTracing PHP comes with a mock implementation, it has three purposes:
-
-1. Helps to iron the API.
-2. Works as a reference implementation.
-3. Enhances vendor agnostic unit testing as it allows developers to inspect the tracing objects
-in order to do assertions about them.
-
-## Coding Style
-
-OpenTracing PHP follows the [PSR-2](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md)
-coding standard and the [PSR-4](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-4-autoloader.md) autoloading standard.
-
-## License
-
-All the open source contributions are under the terms of the [Apache-2.0 License](https://opensource.org/licenses/Apache-2.0).
diff --git a/vendor/opentracing/opentracing/composer.json b/vendor/opentracing/opentracing/composer.json
deleted file mode 100644
index b00b67381..000000000
--- a/vendor/opentracing/opentracing/composer.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "name": "opentracing/opentracing",
- "type": "library",
- "description": "OpenTracing API for PHP",
- "license": "Apache-2.0",
- "minimum-stability": "stable",
- "authors": [
- {
- "name": "José Carlos Chávez",
- "email": "[email protected]"
- }
- ],
- "require": {
- "php": "^7.1 || ^8.0"
- },
- "require-dev": {
- "phpstan/phpstan": "~0.12",
- "phpunit/phpunit": "^7.0 || ^9.0",
- "squizlabs/php_codesniffer": "3.*"
- },
- "config": {
- "sort-packages": true
- },
- "autoload": {
- "psr-4": {
- "OpenTracing\\": "src/OpenTracing/"
- },
- "files": [
- "src/OpenTracing/Tags.php",
- "src/OpenTracing/Formats.php"
- ]
- },
- "autoload-dev": {
- "psr-4": {
- "OpenTracing\\Tests\\": "tests/OpenTracing"
- }
- },
- "scripts": {
- "fix-lint": "phpcbf --standard=ZEND --standard=PSR2 --ignore=*/vendor/* ./",
- "lint": "phpcs --standard=ZEND --standard=PSR2 --ignore=*/vendor/* ./",
- "test": "phpunit tests",
- "static-check": "phpstan analyse"
- }
-}
diff --git a/vendor/opentracing/opentracing/phpstan.neon b/vendor/opentracing/opentracing/phpstan.neon
deleted file mode 100644
index c9e64bf1f..000000000
--- a/vendor/opentracing/opentracing/phpstan.neon
+++ /dev/null
@@ -1,5 +0,0 @@
-parameters:
- paths:
- - src
-
- level: 5
diff --git a/vendor/opentracing/opentracing/phpunit.xml b/vendor/opentracing/opentracing/phpunit.xml
deleted file mode 100644
index 2083a425c..000000000
--- a/vendor/opentracing/opentracing/phpunit.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0"?>
-<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd"
- backupGlobals="true"
- backupStaticAttributes="false"
- bootstrap="./vendor/autoload.php"
- colors="false"
- convertErrorsToExceptions="true"
- convertNoticesToExceptions="true"
- convertWarningsToExceptions="true"
- forceCoversAnnotation="false"
- processIsolation="false"
- stopOnError="false"
- stopOnFailure="false"
- stopOnIncomplete="false"
- stopOnSkipped="false"
- stopOnRisky="false"
- timeoutForSmallTests="1"
- timeoutForMediumTests="10"
- timeoutForLargeTests="60"
- verbose="false">
- <testsuites>
- <testsuite name="suite">
- <directory>tests</directory>
- </testsuite>
- </testsuites>
-</phpunit>
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Formats.php b/vendor/opentracing/opentracing/src/OpenTracing/Formats.php
deleted file mode 100644
index f26c5ecf1..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Formats.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Formats;
-
-/**
- * Used a (single) arbitrary binary blob representing a SpanContext
- *
- * For both Tracer::inject() and Tracer::extract() the carrier must be a `string`.
- */
-const BINARY = 'binary';
-
-/**
- * Used for an arbitrary string-to-string map with an unrestricted character set for both keys and values
- *
- * Unlike `HTTP_HEADERS`, the `TEXT_MAP` format does not restrict the key or
- * value character sets in any way.
- *
- * For both Tracer::inject() and Tracer::extract() the carrier must be a `array|ArrayObject`.
- */
-const TEXT_MAP = 'text_map';
-
-/**
- * Used for a string-to-string map with keys and values that are suitable for use in HTTP headers (a la RFC 7230.
- * In practice, since there is such "diversity" in the way that HTTP headers are treated in the wild, it is strongly
- * recommended that Tracer implementations use a limited HTTP header key space and escape values conservatively.
- *
- * Unlike `TEXT_MAP`, the `HTTP_HEADERS` format requires that the keys and values be valid as HTTP headers as-is
- * (i.e., character casing may be unstable and special characters are disallowed in keys, values should be
- * URL-escaped, etc).
- *
- * For both Tracer::inject() and Tracer::extract() the carrier must be a `array|ArrayObject`.
- *
- * For example, Tracer::inject():
- *
- * $headers = []
- * $tracer->inject($span->getContext(), Formats\HTTP_HEADERS, $headers)
- * $request = new GuzzleHttp\Psr7\Request($uri, $body, $headers);
- *
- * Or Tracer::extract():
- *
- * $headers = $request->getHeaders()
- * $clientContext = $tracer->extract(Formats\HTTP_HEADERS, $headers)
- *
- * @see http://www.php-fig.org/psr/psr-7/#12-http-headers
- * @see http://php.net/manual/en/function.getallheaders.php
- */
-const HTTP_HEADERS = 'http_headers';
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/GlobalTracer.php b/vendor/opentracing/opentracing/src/OpenTracing/GlobalTracer.php
deleted file mode 100644
index aafdba121..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/GlobalTracer.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-final class GlobalTracer
-{
- /**
- * @var Tracer
- */
- private static $instance;
-
- /**
- * @var bool
- */
- private static $isRegistered = false;
-
- /**
- * GlobalTracer::set sets the [singleton] Tracer returned by get().
- * Those who use GlobalTracer (rather than directly manage a Tracer instance)
- * should call GlobalTracer::set as early as possible in bootstrap, prior to
- * start a new span. Prior to calling GlobalTracer::set, any Spans started
- * via the `Tracer::startActiveSpan` (etc) globals are noops.
- *
- * @param Tracer $tracer
- * @return void
- */
- public static function set(Tracer $tracer): void
- {
- self::$instance = $tracer;
- self::$isRegistered = true;
- }
-
- /**
- * GlobalTracer::get returns the global singleton `Tracer` implementation.
- * Before `GlobalTracer::set` is called, the `GlobalTracer::get` is a noop
- * implementation that drops all data handed to it.
- *
- * @return Tracer
- */
- public static function get(): Tracer
- {
- if (self::$instance === null) {
- self::$instance = new NoopTracer();
- }
-
- return self::$instance;
- }
-
- /**
- * Returns true if a global tracer has been registered, otherwise returns false.
- *
- * @return bool
- */
- public static function isRegistered(): bool
- {
- return self::$isRegistered;
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/InvalidReferenceArgumentException.php b/vendor/opentracing/opentracing/src/OpenTracing/InvalidReferenceArgumentException.php
deleted file mode 100644
index 128360393..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/InvalidReferenceArgumentException.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use InvalidArgumentException;
-
-/**
- * Thrown when passing an invalid argument for a reference
- */
-final class InvalidReferenceArgumentException extends InvalidArgumentException
-{
- /**
- * @return InvalidReferenceArgumentException
- */
- public static function forEmptyType(): InvalidReferenceArgumentException
- {
- return new self('Reference type can not be an empty string');
- }
-
- /**
- * @param mixed $context
- * @return InvalidReferenceArgumentException
- */
- public static function forInvalidContext($context): InvalidReferenceArgumentException
- {
- return new self(sprintf(
- 'Reference expects \OpenTracing\Span or \OpenTracing\SpanContext as context, got %s',
- is_object($context) ? get_class($context) : gettype($context)
- ));
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/InvalidReferencesSetException.php b/vendor/opentracing/opentracing/src/OpenTracing/InvalidReferencesSetException.php
deleted file mode 100644
index de7d907c8..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/InvalidReferencesSetException.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use DomainException;
-
-/**
- * Thrown when a reference has more than one parent in the SpanOptions
- */
-final class InvalidReferencesSetException extends DomainException
-{
- /**
- * @param string $message
- * @return InvalidReferencesSetException
- */
- public static function create(string $message): InvalidReferencesSetException
- {
- return new self($message);
- }
-
- /**
- * @return InvalidReferencesSetException
- */
- public static function forMoreThanOneParent(): InvalidReferencesSetException
- {
- return new self('Span can not have more than one parent, either one as child_of or either one as follows_from');
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/InvalidSpanOptionException.php b/vendor/opentracing/opentracing/src/OpenTracing/InvalidSpanOptionException.php
deleted file mode 100644
index f9b8003ff..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/InvalidSpanOptionException.php
+++ /dev/null
@@ -1,131 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use InvalidArgumentException;
-
-/**
- * Thrown when passing an invalid option on Span creation
- */
-final class InvalidSpanOptionException extends InvalidArgumentException
-{
- /**
- * @return InvalidSpanOptionException
- */
- public static function forIncludingBothChildOfAndReferences(): InvalidSpanOptionException
- {
- return new self('Either "childOf" or "references" options are accepted but not both.');
- }
-
- /**
- * @param mixed $reference
- * @return InvalidSpanOptionException
- */
- public static function forInvalidReference($reference): InvalidSpanOptionException
- {
- return new self(sprintf(
- 'Invalid reference. Expected OpenTracing\Reference, got %s.',
- is_object($reference) ? get_class($reference) : gettype($reference)
- ));
- }
-
- /**
- * @return InvalidSpanOptionException
- */
- public static function forInvalidStartTime(): InvalidSpanOptionException
- {
- return new self('Invalid start_time option. Expected int or float got string.');
- }
-
- /**
- * @param mixed $childOfOption
- * @return InvalidSpanOptionException
- */
- public static function forInvalidChildOf($childOfOption): InvalidSpanOptionException
- {
- return new self(sprintf(
- 'Invalid child_of option. Expected Span or SpanContext, got %s',
- is_object($childOfOption) ? get_class($childOfOption) : gettype($childOfOption)
- ));
- }
-
- /**
- * @param string $key
- * @return InvalidSpanOptionException
- */
- public static function forUnknownOption(string $key): InvalidSpanOptionException
- {
- return new self(sprintf('Invalid option %s.', $key));
- }
-
- /**
- * @param mixed $tag
- * @return InvalidSpanOptionException
- */
- public static function forInvalidTag($tag): InvalidSpanOptionException
- {
- return new self(sprintf('Invalid tag. Expected string, got %s', gettype($tag)));
- }
-
- /**
- * @param mixed $tagValue
- * @return InvalidSpanOptionException
- */
- public static function forInvalidTagValue($tagValue): InvalidSpanOptionException
- {
- return new self(sprintf(
- 'Invalid tag value. Expected scalar or object with __toString method, got %s',
- is_object($tagValue) ? get_class($tagValue) : gettype($tagValue)
- ));
- }
-
- /**
- * @param mixed $value
- * @return InvalidSpanOptionException
- */
- public static function forInvalidTags($value): InvalidSpanOptionException
- {
- return new self(sprintf(
- 'Invalid tags value. Expected a associative array of tags, got %s',
- is_object($value) ? get_class($value) : gettype($value)
- ));
- }
-
- /**
- * @param mixed $value
- * @return InvalidSpanOptionException
- */
- public static function forInvalidReferenceSet($value): InvalidSpanOptionException
- {
- return new self(sprintf(
- 'Invalid references set. Expected Reference or Reference[], got %s',
- is_object($value) ? get_class($value) : gettype($value)
- ));
- }
-
- /**
- * @param mixed $value
- * @return InvalidSpanOptionException
- */
- public static function forFinishSpanOnClose($value): InvalidSpanOptionException
- {
- return new self(sprintf(
- 'Invalid type for finish_span_on_close. Expected bool, got %s',
- is_object($value) ? get_class($value) : gettype($value)
- ));
- }
-
- /**
- * @param mixed $value
- * @return InvalidSpanOptionException
- */
- public static function forIgnoreActiveSpan($value): InvalidSpanOptionException
- {
- return new self(sprintf(
- 'Invalid type for ignore_active_span. Expected bool, got %s',
- is_object($value) ? get_class($value) : gettype($value)
- ));
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScope.php b/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScope.php
deleted file mode 100644
index a814b45b5..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScope.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Mock;
-
-use OpenTracing\Scope;
-use OpenTracing\Span;
-
-final class MockScope implements Scope
-{
- /**
- * @var Span
- */
- private $span;
-
- /**
- * @var MockScopeManager
- */
- private $scopeManager;
-
- /**
- * @var bool
- */
- private $finishSpanOnClose;
-
- /**
- * @param MockScopeManager $scopeManager
- * @param Span $span
- * @param bool $finishSpanOnClose
- */
- public function __construct(
- MockScopeManager $scopeManager,
- Span $span,
- bool $finishSpanOnClose
- ) {
- $this->scopeManager = $scopeManager;
- $this->span = $span;
- $this->finishSpanOnClose = $finishSpanOnClose;
- }
-
- /**
- * {@inheritdoc}
- */
- public function close(): void
- {
- if ($this->finishSpanOnClose) {
- $this->span->finish();
- }
-
- $this->scopeManager->deactivate($this);
- }
-
- /**
- * {@inheritdoc}
- * @return Span|MockSpan
- */
- public function getSpan(): Span
- {
- return $this->span;
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScopeManager.php b/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScopeManager.php
deleted file mode 100644
index c75c71942..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockScopeManager.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Mock;
-
-use OpenTracing\Scope;
-use OpenTracing\ScopeManager;
-use OpenTracing\Span;
-
-final class MockScopeManager implements ScopeManager
-{
- /**
- * @var Scope[]
- */
- private $scopes = [];
-
- /**
- * {@inheritdoc}
- */
- public function activate(Span $span, bool $finishSpanOnClose = ScopeManager::DEFAULT_FINISH_SPAN_ON_CLOSE): Scope
- {
- $scope = new MockScope($this, $span, $finishSpanOnClose);
- $this->scopes[] = $scope;
-
- return $scope;
- }
-
- /**
- * {@inheritdoc}
- */
- public function getActive(): ?Scope
- {
- if (empty($this->scopes)) {
- return null;
- }
-
- return $this->scopes[count($this->scopes) - 1];
- }
-
- public function deactivate(MockScope $scope): void
- {
- foreach ($this->scopes as $scopeIndex => $scopeItem) {
- if ($scope === $scopeItem) {
- unset($this->scopes[$scopeIndex]);
- }
- }
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpan.php b/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpan.php
deleted file mode 100644
index db53649bf..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpan.php
+++ /dev/null
@@ -1,145 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Mock;
-
-use OpenTracing\Span;
-use OpenTracing\SpanContext;
-
-final class MockSpan implements Span
-{
- /**
- * @var string
- */
- private $operationName;
-
- /**
- * @var SpanContext
- */
- private $context;
-
- /**
- * @var array
- */
- private $tags = [];
-
- /**
- * @var array
- */
- private $logs = [];
-
- /**
- * @var int
- */
- private $startTime;
-
- /**
- * @var int|null
- */
- private $duration;
-
- public function __construct(
- string $operationName,
- SpanContext $context,
- ?int $startTime = null
- ) {
- $this->operationName = $operationName;
- $this->context = $context;
- $this->startTime = $startTime ?: time();
- }
-
- /**
- * {@inheritdoc}
- */
- public function getOperationName(): string
- {
- return $this->operationName;
- }
-
- /**
- * {@inheritdoc}
- * @return SpanContext|MockSpanContext
- */
- public function getContext(): SpanContext
- {
- return $this->context;
- }
-
- public function getStartTime(): ?int
- {
- return $this->startTime;
- }
-
- /**
- * {@inheritdoc}
- */
- public function finish($finishTime = null): void
- {
- $finishTime = ($finishTime ?: time());
- $this->duration = $finishTime - $this->startTime;
- }
-
- public function isFinished(): bool
- {
- return $this->duration !== null;
- }
-
- public function getDuration(): ?int
- {
- return $this->duration;
- }
-
- /**
- * {@inheritdoc}
- */
- public function overwriteOperationName(string $newOperationName): void
- {
- $this->operationName = (string)$newOperationName;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setTag(string $key, $value): void
- {
- $this->tags[$key] = $value;
- }
-
- public function getTags(): array
- {
- return $this->tags;
- }
-
- /**
- * {@inheritdoc}
- */
- public function log(array $fields = [], $timestamp = null): void
- {
- $this->logs[] = [
- 'timestamp' => $timestamp ?: time(),
- 'fields' => $fields,
- ];
- }
-
- public function getLogs(): array
- {
- return $this->logs;
- }
-
- /**
- * {@inheritdoc}
- */
- public function addBaggageItem(string $key, string $value): void
- {
- $this->context = $this->context->withBaggageItem($key, $value);
- }
-
- /**
- * {@inheritdoc}
- */
- public function getBaggageItem(string $key): ?string
- {
- return $this->context->getBaggageItem($key);
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpanContext.php b/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpanContext.php
deleted file mode 100644
index d094ea0e0..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockSpanContext.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Mock;
-
-use OpenTracing\SpanContext;
-use ArrayIterator;
-
-final class MockSpanContext implements SpanContext
-{
- /**
- * @var int
- */
- private $traceId;
-
- /**
- * @var int
- */
- private $spanId;
-
- /**
- * @var bool
- */
- private $isSampled;
-
- /**
- * @var array
- */
- private $items;
-
- private function __construct(int $traceId, int $spanId, bool $isSampled, array $items)
- {
- $this->traceId = $traceId;
- $this->spanId = $spanId;
- $this->isSampled = $isSampled;
- $this->items = $items;
- }
-
- public static function create(int $traceId, int $spanId, bool $sampled = true, array $items = []): SpanContext
- {
- return new self($traceId, $spanId, $sampled, $items);
- }
-
- public static function createAsRoot(bool $sampled = true, array $items = []): SpanContext
- {
- $traceId = $spanId = self::nextId();
- return new self($traceId, $spanId, $sampled, $items);
- }
-
- public static function createAsChildOf(MockSpanContext $spanContext): SpanContext
- {
- $spanId = self::nextId();
- return new self($spanContext->traceId, $spanId, $spanContext->isSampled, $spanContext->items);
- }
-
- public function getTraceId(): int
- {
- return $this->traceId;
- }
-
- public function getSpanId(): int
- {
- return $this->spanId;
- }
-
- public function isSampled(): bool
- {
- return $this->isSampled;
- }
-
- /**
- * {@inheritdoc}
- */
- public function getIterator(): ArrayIterator
- {
- return new ArrayIterator($this->items);
- }
-
- /**
- * {@inheritdoc}
- */
- public function getBaggageItem(string $key): ?string
- {
- return array_key_exists($key, $this->items) ? $this->items[$key] : null;
- }
-
- /**
- * {@inheritdoc}
- */
- public function withBaggageItem(string $key, string $value): SpanContext
- {
- return new self($this->traceId, $this->spanId, $this->isSampled, array_merge($this->items, [$key => $value]));
- }
-
- private static function nextId(): int
- {
- return mt_rand(0, 99999);
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockTracer.php b/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockTracer.php
deleted file mode 100644
index f4f4577a1..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Mock/MockTracer.php
+++ /dev/null
@@ -1,152 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Mock;
-
-use OpenTracing\InvalidReferenceArgumentException;
-use OpenTracing\UnsupportedFormatException;
-use OpenTracing\Scope;
-use OpenTracing\ScopeManager;
-use OpenTracing\Span;
-use OpenTracing\SpanContext;
-use OpenTracing\StartSpanOptions;
-use OpenTracing\Tracer;
-
-final class MockTracer implements Tracer
-{
- /**
- * @var array|MockSpan[]
- */
- private $spans = [];
-
- /**
- * @var array|callable[]
- */
- private $injectors;
-
- /**
- * @var array|callable[]
- */
- private $extractors;
-
- /**
- * @var ScopeManager
- */
- private $scopeManager;
-
- public function __construct(array $injectors = [], array $extractors = [])
- {
- $this->injectors = $injectors;
- $this->extractors = $extractors;
- $this->scopeManager = new MockScopeManager();
- }
-
- /**
- * {@inheritdoc}
- */
- public function startActiveSpan(string $operationName, $options = []): Scope
- {
- if (!($options instanceof StartSpanOptions)) {
- $options = StartSpanOptions::create($options);
- }
-
- if (($activeSpan = $this->getActiveSpan()) !== null) {
- $options = $options->withParent($activeSpan);
- }
-
- $span = $this->startSpan($operationName, $options);
-
- return $this->scopeManager->activate($span, $options->shouldFinishSpanOnClose());
- }
-
- /**
- * {@inheritdoc}
- */
- public function startSpan(string $operationName, $options = []): Span
- {
- if (!($options instanceof StartSpanOptions)) {
- $options = StartSpanOptions::create($options);
- }
-
- if (empty($options->getReferences())) {
- $spanContext = MockSpanContext::createAsRoot();
- } else {
- $referenceContext = $options->getReferences()[0]->getSpanContext();
- if (!$referenceContext instanceof MockSpanContext) {
- throw InvalidReferenceArgumentException::forInvalidContext($referenceContext);
- }
- $spanContext = MockSpanContext::createAsChildOf($referenceContext);
- }
-
- $span = new MockSpan($operationName, $spanContext, $options->getStartTime());
-
- foreach ($options->getTags() as $key => $value) {
- $span->setTag($key, $value);
- }
-
- $this->spans[] = $span;
-
- return $span;
- }
-
- /**
- * {@inheritdoc}
- */
- public function inject(SpanContext $spanContext, string $format, &$carrier): void
- {
- if (!array_key_exists($format, $this->injectors)) {
- throw UnsupportedFormatException::forFormat($format);
- }
-
- $this->injectors[$format]($spanContext, $carrier);
- }
-
- /**
- * {@inheritdoc}
- */
- public function extract(string $format, $carrier): ?SpanContext
- {
- if (!array_key_exists($format, $this->extractors)) {
- throw UnsupportedFormatException::forFormat($format);
- }
-
- return $this->extractors[$format]($carrier);
- }
-
- /**
- * {@inheritdoc}
- */
- public function flush(): void
- {
- $this->spans = [];
- }
-
- /**
- * @return array|MockSpan[]
- */
- public function getSpans(): array
- {
- return $this->spans;
- }
-
- /**
- * {@inheritdoc}
- */
- public function getScopeManager(): ScopeManager
- {
- return $this->scopeManager;
- }
-
- /**
- * {@inheritdoc}
- */
- public function getActiveSpan(): ?Span
- {
- if (null !== ($activeScope = $this->scopeManager->getActive())) {
- return $activeScope->getSpan();
- }
-
- return null;
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/NoopScope.php b/vendor/opentracing/opentracing/src/OpenTracing/NoopScope.php
deleted file mode 100644
index 7170c846a..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/NoopScope.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-final class NoopScope implements Scope
-{
- /**
- * {@inheritdoc}
- */
- public function close(): void
- {
- }
-
- /**
- * {@inheritdoc}
- */
- public function getSpan(): Span
- {
- return new NoopSpan();
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/NoopScopeManager.php b/vendor/opentracing/opentracing/src/OpenTracing/NoopScopeManager.php
deleted file mode 100644
index 5576171a8..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/NoopScopeManager.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-final class NoopScopeManager implements ScopeManager
-{
- /**
- * {@inheritdoc}
- */
- public function activate(Span $span, bool $finishSpanOnClose = ScopeManager::DEFAULT_FINISH_SPAN_ON_CLOSE): Scope
- {
- return new NoopScope();
- }
-
- /**
- * {@inheritdoc}
- */
- public function getActive(): ?Scope
- {
- return new NoopScope();
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/NoopSpan.php b/vendor/opentracing/opentracing/src/OpenTracing/NoopSpan.php
deleted file mode 100644
index c1af8dfc7..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/NoopSpan.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-final class NoopSpan implements Span
-{
- /**
- * {@inheritdoc}
- */
- public function getOperationName(): string
- {
- return 'noop_span';
- }
-
- /**
- * {@inheritdoc}
- */
- public function getContext(): SpanContext
- {
- return new NoopSpanContext();
- }
-
- /**
- * {@inheritdoc}
- */
- public function finish($finishTime = null): void
- {
- }
-
- /**
- * {@inheritdoc}
- */
- public function overwriteOperationName(string $newOperationName): void
- {
- }
-
- /**
- * {@inheritdoc}
- */
- public function setTag(string $key, $value): void
- {
- }
-
- /**
- * {@inheritdoc}
- */
- public function log(array $fields = [], $timestamp = null): void
- {
- }
-
- /**
- * {@inheritdoc}
- */
- public function addBaggageItem(string $key, string $value): void
- {
- }
-
- /**
- * {@inheritdoc}
- */
- public function getBaggageItem(string $key): ?string
- {
- return null;
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/NoopSpanContext.php b/vendor/opentracing/opentracing/src/OpenTracing/NoopSpanContext.php
deleted file mode 100644
index 5b0de7c93..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/NoopSpanContext.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use EmptyIterator;
-use Traversable;
-
-final class NoopSpanContext implements SpanContext
-{
- /**
- * {@inheritdoc}
- */
- public function getIterator(): Traversable
- {
- return new EmptyIterator();
- }
-
- /**
- * {@inheritdoc}
- */
- public function getBaggageItem(string $key): ?string
- {
- return null;
- }
-
- /**
- * {@inheritdoc}
- */
- public function withBaggageItem(string $key, string $value): SpanContext
- {
- return new self();
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/NoopTracer.php b/vendor/opentracing/opentracing/src/OpenTracing/NoopTracer.php
deleted file mode 100644
index 267823bb9..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/NoopTracer.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-final class NoopTracer implements Tracer
-{
- /**
- * {@inheritdoc}
- */
- public function getActiveSpan(): ?Span
- {
- return new NoopSpan();
- }
-
- /**
- * {@inheritdoc}
- */
- public function getScopeManager(): ScopeManager
- {
- return new NoopScopeManager();
- }
-
- /**
- * {@inheritdoc}
- */
- public function startSpan(string $operationName, $options = []): Span
- {
- return new NoopSpan();
- }
-
- /**
- * {@inheritdoc}
- */
- public function startActiveSpan(string $operationName, $options = []): Scope
- {
- return new NoopScope();
- }
-
- /**
- * {@inheritdoc}
- */
- public function inject(SpanContext $spanContext, string $format, &$carrier): void
- {
- }
-
- /**
- * {@inheritdoc}
- */
- public function extract(string $format, $carrier): ?SpanContext
- {
- return new NoopSpanContext();
- }
-
- /**
- * {@inheritdoc}
- */
- public function flush(): void
- {
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Reference.php b/vendor/opentracing/opentracing/src/OpenTracing/Reference.php
deleted file mode 100644
index 7dadf1785..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Reference.php
+++ /dev/null
@@ -1,77 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use OpenTracing\InvalidReferenceArgumentException;
-
-final class Reference
-{
- /**
- * A Span may be the ChildOf a parent Span. In a ChildOf reference,
- * the parent Span depends on the child Span in some capacity.
- */
- public const CHILD_OF = 'child_of';
-
- /**
- * Some parent Spans do not depend in any way on the result of their
- * child Spans. In these cases, we say merely that the child Span
- * FollowsFrom the parent Span in a causal sense.
- */
- public const FOLLOWS_FROM = 'follows_from';
-
- /**
- * @var string
- */
- private $type;
-
- /**
- * @var SpanContext
- */
- private $spanContext;
-
- /**
- * @param string $type
- * @param SpanContext $spanContext
- */
- public function __construct(string $type, SpanContext $spanContext)
- {
- if (empty($type)) {
- throw InvalidReferenceArgumentException::forEmptyType();
- }
-
- $this->type = $type;
- $this->spanContext = $spanContext;
- }
-
- /**
- * @param string $type
- * @param Span $span
- * @return Reference when context is invalid
- * @throws InvalidReferenceArgumentException on empty type
- */
- public static function createForSpan(string $type, Span $span): Reference
- {
- return new self($type, $span->getContext());
- }
-
- /**
- * @return SpanContext
- */
- public function getSpanContext(): SpanContext
- {
- return $this->spanContext;
- }
-
- /**
- * Checks whether a Reference is of one type.
- *
- * @param string $type the type for the reference
- * @return bool
- */
- public function isType(string $type): bool
- {
- return $this->type === $type;
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Scope.php b/vendor/opentracing/opentracing/src/OpenTracing/Scope.php
deleted file mode 100644
index 174495434..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Scope.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-/**
- * A {@link Scope} formalizes the activation and deactivation of a {@link Span}, usually from a CPU standpoint.
- *
- * Many times a {@link Span} will be extant (in that {@link Span#finish()} has not been called) despite being in a
- * non-runnable state from a CPU/scheduler standpoint. For instance, a {@link Span} representing the client side of an
- * RPC will be unfinished but blocked on IO while the RPC is still outstanding. A {@link Scope} defines when a given
- * {@link Span} <em>is</em> scheduled and on the path.
- */
-interface Scope
-{
- /**
- * Mark the end of the active period for the current thread and {@link Scope},
- * updating the {@link ScopeManager#active()} in the process.
- *
- * NOTE: Calling {@link #close} more than once on a single {@link Scope} instance leads to undefined
- * behavior.
- *
- * @return void
- */
- public function close(): void;
-
- /**
- * @return Span the {@link Span} that's been scoped by this {@link Scope}
- */
- public function getSpan(): Span;
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/ScopeManager.php b/vendor/opentracing/opentracing/src/OpenTracing/ScopeManager.php
deleted file mode 100644
index db5fcaa47..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/ScopeManager.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-/**
- * Keeps track of the current active `Span`.
- */
-interface ScopeManager
-{
- public const DEFAULT_FINISH_SPAN_ON_CLOSE = true;
-
- /**
- * Activates an `Span`, so that it is used as a parent when creating new spans.
- * The implementation must keep track of the active spans sequence, so
- * that previous spans can be resumed after a deactivation.
- *
- * @param Span $span the {@link Span} that should become the {@link #active()}
- * @param bool $finishSpanOnClose whether span should automatically be finished
- * when {@link Scope#close()} is called. Its default value is true.
- *
- * @return Scope instance to control the end of the active period for the {@link Span}. It is a
- * programming error to neglect to call {@link Scope#close()} on the returned instance.
- */
- public function activate(Span $span, bool $finishSpanOnClose = self::DEFAULT_FINISH_SPAN_ON_CLOSE): Scope;
-
- /**
- * Return the currently active {@link Scope} which can be used to access the
- * currently active {@link Scope#getSpan()}.
- *
- * If there is an {@link Scope non-null scope}, its wrapped {@link Span} becomes an implicit parent
- * (as {@link References#CHILD_OF} reference) of any
- * newly-created {@link Span} at {@link Tracer.SpanBuilder#startActive(boolean)} or {@link SpanBuilder#start()}
- * time rather than at {@link Tracer#buildSpan(String)} time.
- *
- * @return Scope|null
- */
- public function getActive(): ?Scope;
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Span.php b/vendor/opentracing/opentracing/src/OpenTracing/Span.php
deleted file mode 100644
index 9fa8c2bc2..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Span.php
+++ /dev/null
@@ -1,95 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use DateTimeInterface;
-
-interface Span
-{
- /**
- * @return string
- */
- public function getOperationName(): string;
-
- /**
- * Yields the SpanContext for this Span. Note that the return value of
- * Span::getContext() is still valid after a call to Span::finish(), as is
- * a call to Span::getContext() after a call to Span::finish().
- *
- * @return SpanContext
- */
- public function getContext(): SpanContext;
-
- /**
- * Sets the end timestamp and finalizes Span state.
- *
- * With the exception of calls to getContext() (which are always allowed),
- * finish() must be the last call made to any span instance, and to do
- * otherwise leads to undefined behavior but not returning an exception.
- *
- * As an implementor, make sure you call {@see Tracer::deactivate()}
- * otherwise new spans might try to be child of this one.
- *
- * If the span is already finished, a warning should be logged.
- *
- * @param float|int|DateTimeInterface|null $finishTime if passing float or int
- * it should represent the timestamp (including as many decimal places as you need)
- * @return void
- */
- public function finish($finishTime = null): void;
-
- /**
- * If the span is already finished, a warning should be logged.
- *
- * @param string $newOperationName
- * @return void
- */
- public function overwriteOperationName(string $newOperationName): void;
-
- /**
- * Adds a tag to the span.
- *
- * If there is a pre-existing tag set for key, it is overwritten.
- *
- * As an implementor, consider using "standard tags" listed in {@see \OpenTracing\Tags}
- *
- * If the span is already finished, a warning should be logged.
- *
- * @param string $key
- * @param string|bool|int|float $value
- * @return void
- */
- public function setTag(string $key, $value): void;
-
- /**
- * Adds a log record to the span in key => value format, key must be a string and tag must be either
- * a string, a boolean value, or a numeric type.
- *
- * If the span is already finished, a warning should be logged.
- *
- * @param array $fields
- * @param int|float|DateTimeInterface $timestamp
- * @return void
- */
- public function log(array $fields = [], $timestamp = null): void;
-
- /**
- * Adds a baggage item to the SpanContext which is immutable so it is required to use
- * SpanContext::withBaggageItem to get a new one.
- *
- * If the span is already finished, a warning should be logged.
- *
- * @param string $key
- * @param string $value
- * @return void
- */
- public function addBaggageItem(string $key, string $value): void;
-
- /**
- * @param string $key
- * @return string|null returns null when there is not a item under the provided key
- */
- public function getBaggageItem(string $key): ?string;
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/SpanContext.php b/vendor/opentracing/opentracing/src/OpenTracing/SpanContext.php
deleted file mode 100644
index ca05ff9ac..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/SpanContext.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use IteratorAggregate;
-
-/**
- * SpanContext must be immutable in order to avoid complicated lifetime
- * issues around Span finish and references.
- *
- * Baggage items are key => value string pairs that apply to the given Span,
- * its SpanContext, and all Spans which directly or transitively reference
- * the local Span. That is, baggage items propagate in-band along with the
- * trace itself.
- */
-interface SpanContext extends IteratorAggregate
-{
- /**
- * Returns the value of a baggage item based on its key. If there is no
- * value with such key it will return null.
- *
- * @param string $key
- * @return string|null
- */
- public function getBaggageItem(string $key): ?string;
-
- /**
- * Creates a new SpanContext out of the existing one and the new key => value pair.
- *
- * @param string $key
- * @param string $value
- * @return SpanContext
- */
- public function withBaggageItem(string $key, string $value): SpanContext;
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/StartSpanOptions.php b/vendor/opentracing/opentracing/src/OpenTracing/StartSpanOptions.php
deleted file mode 100644
index 28b73ff0a..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/StartSpanOptions.php
+++ /dev/null
@@ -1,206 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use DateTime;
-use DateTimeInterface;
-use OpenTracing\InvalidReferencesSetException;
-use OpenTracing\InvalidSpanOptionException;
-
-final class StartSpanOptions
-{
- /**
- * @var Reference[]
- */
- private $references = [];
-
- /**
- * @var array
- */
- private $tags = [];
-
- /**
- * @var int|float|DateTimeInterface
- */
- private $startTime;
-
- /**
- * Only used for spans that are actively managed by scope manager.
- *
- * @var bool
- */
- private $finishSpanOnClose = ScopeManager::DEFAULT_FINISH_SPAN_ON_CLOSE;
-
- /**
- * @var bool
- */
- private $ignoreActiveSpan = false;
-
- /**
- * @param array $options
- * @return StartSpanOptions
- * @throws InvalidReferencesSetException when there are inconsistencies about the references
- * @throws InvalidSpanOptionException when one of the options is invalid
- */
- public static function create(array $options): StartSpanOptions
- {
- $spanOptions = new self();
-
- foreach ($options as $key => $value) {
- switch ($key) {
- case 'child_of':
- if (!empty($spanOptions->references)) {
- throw InvalidSpanOptionException::forIncludingBothChildOfAndReferences();
- }
-
- $spanOptions->references[] = self::buildChildOf($value);
- break;
-
- case 'references':
- if (!empty($spanOptions->references)) {
- throw InvalidSpanOptionException::forIncludingBothChildOfAndReferences();
- }
-
- if ($value instanceof Reference) {
- $spanOptions->references = [$value];
- } elseif (is_array($value)) {
- $spanOptions->references = self::buildReferences($value);
- } else {
- throw InvalidSpanOptionException::forInvalidReferenceSet($value);
- }
-
- break;
-
- case 'tags':
- if (!is_array($value)) {
- throw InvalidSpanOptionException::forInvalidTags($value);
- }
-
- foreach ($value as $tag => $tagValue) {
- if ($tag !== (string)$tag) {
- throw InvalidSpanOptionException::forInvalidTag($tag);
- }
-
- $spanOptions->tags[$tag] = $tagValue;
- }
- break;
-
- case 'start_time':
- if (is_scalar($value) && !is_numeric($value)) {
- throw InvalidSpanOptionException::forInvalidStartTime();
- }
-
- $spanOptions->startTime = $value;
- break;
-
- case 'finish_span_on_close':
- if (!is_bool($value)) {
- throw InvalidSpanOptionException::forFinishSpanOnClose($value);
- }
-
- $spanOptions->finishSpanOnClose = $value;
- break;
-
- case 'ignore_active_span':
- if (!is_bool($value)) {
- throw InvalidSpanOptionException::forIgnoreActiveSpan($value);
- }
-
- $spanOptions->ignoreActiveSpan = $value;
- break;
-
- default:
- throw InvalidSpanOptionException::forUnknownOption($key);
- }
- }
-
- return $spanOptions;
- }
-
- /**
- * @param Span|SpanContext $parent
- * @return StartSpanOptions
- */
- public function withParent($parent): StartSpanOptions
- {
- $newSpanOptions = new StartSpanOptions();
- $newSpanOptions->references[] = self::buildChildOf($parent);
- $newSpanOptions->tags = $this->tags;
- $newSpanOptions->startTime = $this->startTime;
- $newSpanOptions->finishSpanOnClose = $this->finishSpanOnClose;
- $newSpanOptions->ignoreActiveSpan = $this->ignoreActiveSpan;
-
- return $newSpanOptions;
- }
-
- /**
- * @return Reference[]
- */
- public function getReferences(): array
- {
- return $this->references;
- }
-
- /**
- * @return array
- */
- public function getTags(): array
- {
- return $this->tags;
- }
-
- /**
- * @return int|float|DateTime|null if returning float or int it should represent
- * the timestamp (including as many decimal places as you need)
- */
- public function getStartTime()
- {
- return $this->startTime;
- }
-
- /**
- * @return bool
- */
- public function shouldFinishSpanOnClose(): bool
- {
- return $this->finishSpanOnClose;
- }
-
- /**
- * @return bool
- */
- public function shouldIgnoreActiveSpan(): bool
- {
- return $this->ignoreActiveSpan;
- }
-
- private static function buildChildOf($value): Reference
- {
- if ($value instanceof Span) {
- return Reference::createForSpan(Reference::CHILD_OF, $value);
- }
-
- if ($value instanceof SpanContext) {
- return new Reference(Reference::CHILD_OF, $value);
- }
-
- throw InvalidSpanOptionException::forInvalidChildOf($value);
- }
-
- private static function buildReferences(array $referencesArray): array
- {
- $references = [];
-
- foreach ($referencesArray as $reference) {
- if (!($reference instanceof Reference)) {
- throw InvalidSpanOptionException::forInvalidReference($reference);
- }
-
- $references[] = $reference;
- }
-
- return $references;
- }
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Tags.php b/vendor/opentracing/opentracing/src/OpenTracing/Tags.php
deleted file mode 100644
index 5d06627de..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Tags.php
+++ /dev/null
@@ -1,124 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Tags;
-
-/**
- * SpanKind hints at relationship between spans, e.g. client/server
- */
-const SPAN_KIND = 'span.kind';
-
-/**
- * Marks a span representing the client-side of an RPC or other remote call
- */
-const SPAN_KIND_RPC_CLIENT = 'client';
-
-/**
- * Marks a span representing the server-side of an RPC or other remote call
- */
-const SPAN_KIND_RPC_SERVER = 'server';
-
-/**
- * Marks a span as representing the producer within a messaging context
- */
-const SPAN_KIND_MESSAGE_BUS_PRODUCER = 'producer';
-
-/**
- * Marks a span as representing the consumer within a messaging context
- */
-const SPAN_KIND_MESSAGE_BUS_CONSUMER = 'consumer';
-
-/**
- * Component is a low-cardinality identifier of the module, library,
- * or package that is generating a span.
- */
-const COMPONENT = 'component';
-
-/**
- * SAMPLING_PRIORITY (uint16) determines the priority of sampling this Span.
- */
-const SAMPLING_PRIORITY = 'sampling.priority';
-
-/**
- * PeerService records the service name of the peer
- */
-const PEER_SERVICE = 'peer.service';
-
-/**
- * PeerHostname records the host name of the peer
- */
-const PEER_HOSTNAME = 'peer.hostname';
-
-/**
- * PEER_ADDRESS (string) suitable for use in a networking client library.
- * This may be a "ip:port", a bare "hostname", a FQDN, or even a # JDBC
- * substring like "mysql://prod-db:3306"
- */
-const PEER_ADDRESS = 'peer.address';
-
-/**
- * PEER_HOST_IPV4 (uint32) records IP v4 host address of the peer
- */
-const PEER_HOST_IPV4 = 'peer.ipv4';
-
-/**
- * PEER_HOST_IPV6 (string) records IP v6 host address of the peer
- */
-const PEER_HOST_IPV6 = 'peer.ipv6';
-
-/** PEER_PORT (uint16) records port number of the peer */
-const PEER_PORT = 'peer.port';
-
-/**
- * HTTPUrl should be the URL of the request being handled in this segment
- * of the trace, in standard URI format. The protocol is optional.
- */
-const HTTP_URL = 'http.url';
-
-/**
- * HTTPMethod is the HTTP method of the request, and is case-insensitive.
- */
-const HTTP_METHOD = 'http.method';
-
-/**
- * HTTPStatusCode is the numeric HTTP status code (200, 404, etc) of the
- * HTTP response.
- */
-const HTTP_STATUS_CODE = 'http.status_code';
-
-/**
- * DATABASE_INSTANCE (string) The database instance name.
- */
-const DATABASE_INSTANCE = 'db.instance';
-
-/**
- * DATABASE_STATEMENT (string) A database statement for the given database
- * type. E.g., for db.type="SQL", "SELECT * FROM user_table"; # for
- * db.type="redis", "SET mykey 'WuValue'". */
-const DATABASE_STATEMENT = 'db.statement';
-
-/**
- * DATABASE_TYPE (string) For any SQL database, "sql". For others, the lower-case
- * database category, e.g. "cassandra", "hbase", or "redis".
- */
-const DATABASE_TYPE = 'db.type';
-
-/**
- * DATABASE_USER (string) Username for accessing database. E.g., "readonly_user" or
- * "reporting_user"
- */
-const DATABASE_USER = 'db.user';
-
-/**
- * MESSAGE_BUS_DESTINATION (string) An address at which messages can be #
- * exchanged. E.g. A Kafka record has an associated "topic name" that can #
- * be extracted by the instrumented producer or consumer and stored # using
- * this tag.
- */
-const MESSAGE_BUS_DESTINATION = 'message_bus.destination';
-
-/**
- * Error indicates that operation represented by the span resulted in an error.
- */
-const ERROR = 'error';
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/Tracer.php b/vendor/opentracing/opentracing/src/OpenTracing/Tracer.php
deleted file mode 100644
index 391a5159b..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/Tracer.php
+++ /dev/null
@@ -1,119 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use OpenTracing\UnsupportedFormatException;
-use OpenTracing\InvalidSpanOptionException;
-use OpenTracing\InvalidReferencesSetException;
-
-interface Tracer
-{
- /**
- * Returns the current {@link ScopeManager}, which may be a noop but may not be null.
- *
- * @return ScopeManager
- */
- public function getScopeManager(): ScopeManager;
-
- /**
- * Returns the active {@link Span}. This is a shorthand for
- * Tracer::getScopeManager()->getActive()->getSpan(),
- * and null will be returned if {@link Scope#active()} is null.
- *
- * @return Span|null
- */
- public function getActiveSpan(): ?Span;
-
- /**
- * Starts a new span that is activated on a scope manager.
- *
- * It's also possible to not finish the {@see \OpenTracing\Span} when
- * {@see \OpenTracing\Scope} context expires:
- *
- * $scope = $tracer->startActiveSpan('...', [
- * 'finish_span_on_close' => false,
- * ]);
- * $span = $scope->getSpan();
- * try {
- * $span->setTag(Tags\HTTP_METHOD, 'GET');
- * // ...
- * } finally {
- * $scope->close();
- * }
- * // $span->finish() is not called as part of Scope deactivation as
- * // finish_span_on_close is false
- *
- * @param string $operationName
- * @param array|StartSpanOptions $options Same as for startSpan() with
- * additional option of `finish_span_on_close` that enables finishing
- * of span whenever a scope is closed. It is true by default.
- *
- * @return Scope A Scope that holds newly created Span and is activated on
- * a ScopeManager.
- */
- public function startActiveSpan(string $operationName, $options = []): Scope;
-
- /**
- * Starts and returns a new span representing a unit of work.
- *
- * Whenever `child_of` reference is not passed then
- * {@see \OpenTracing\ScopeManager::getActive()} span is used as `child_of`
- * reference. In order to ignore implicit parent span pass in
- * `ignore_active_span` option set to true.
- *
- * Starting a span with explicit parent:
- *
- * $tracer->startSpan('...', [
- * 'child_of' => $parentSpan,
- * ]);
- *
- * @param string $operationName
- * @param array|StartSpanOptions $options See StartSpanOptions for
- * available options.
- *
- * @return Span
- *
- * @throws InvalidSpanOptionException for invalid option
- * @throws InvalidReferencesSetException for invalid references set
- * @see \OpenTracing\StartSpanOptions
- */
- public function startSpan(string $operationName, $options = []): Span;
-
- /**
- * @param SpanContext $spanContext
- * @param string $format
- * @param mixed $carrier
- * @return void
- *
- * @throws UnsupportedFormatException when the format is not recognized by the tracer
- * implementation
- * @see Formats
- */
- public function inject(SpanContext $spanContext, string $format, &$carrier): void;
-
- /**
- * @param string $format
- * @param mixed $carrier
- * @return SpanContext|null
- *
- * @throws UnsupportedFormatException when the format is not recognized by the tracer
- * implementation
- * @see Formats
- */
- public function extract(string $format, $carrier): ?SpanContext;
-
- /**
- * Allow tracer to send span data to be instrumented.
- *
- * This method might not be needed depending on the tracing implementation
- * but one should make sure this method is called after the request is delivered
- * to the client.
- *
- * As an implementor, a good idea would be to use {@see register_shutdown_function}
- * or {@see fastcgi_finish_request} in order to not to delay the end of the request
- * to the client.
- */
- public function flush(): void;
-}
diff --git a/vendor/opentracing/opentracing/src/OpenTracing/UnsupportedFormatException.php b/vendor/opentracing/opentracing/src/OpenTracing/UnsupportedFormatException.php
deleted file mode 100644
index dd4ef56a3..000000000
--- a/vendor/opentracing/opentracing/src/OpenTracing/UnsupportedFormatException.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing;
-
-use UnexpectedValueException;
-
-/**
- * Thrown when trying to inject or extract in an invalid format
- */
-final class UnsupportedFormatException extends UnexpectedValueException
-{
- /**
- * @param string $format
- * @return UnsupportedFormatException
- */
- public static function forFormat(string $format): UnsupportedFormatException
- {
- return new self(sprintf('The format "%s" is not supported.', $format));
- }
-}
diff --git a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockScopeManagerTest.php b/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockScopeManagerTest.php
deleted file mode 100644
index eeca24497..000000000
--- a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockScopeManagerTest.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Tests\Mock;
-
-use OpenTracing\Mock\MockScopeManager;
-use OpenTracing\Mock\MockTracer;
-use PHPUnit\Framework\TestCase;
-
-final class MockScopeManagerTest extends TestCase
-{
- private const OPERATION_NAME = 'test_name';
-
- public function testGetActiveFailsWithNoActiveSpans()
- {
- $scopeManager = new MockScopeManager();
-
- $this->assertNull($scopeManager->getActive());
- }
-
- public function testActivateSuccess()
- {
- $tracer = new MockTracer();
- $span = $tracer->startSpan(self::OPERATION_NAME);
- $scopeManager = new MockScopeManager();
- $scopeManager->activate($span);
-
- $this->assertSame($span, $scopeManager->getActive()->getSpan());
- }
-
- public function testGetScopeReturnsNull()
- {
- $tracer = new MockTracer();
- $tracer->startSpan(self::OPERATION_NAME);
- $scopeManager = new MockScopeManager();
-
- $this->assertNull($scopeManager->getActive());
- }
-
- public function testGetScopeSuccess()
- {
- $tracer = new MockTracer();
- $span = $tracer->startSpan(self::OPERATION_NAME);
- $scopeManager = new MockScopeManager();
- $scopeManager->activate($span);
- $scope = $scopeManager->getActive();
-
- $this->assertSame($span, $scope->getSpan());
- }
-
- public function testDeactivateSuccess()
- {
- $tracer = new MockTracer();
- $span = $tracer->startSpan(self::OPERATION_NAME);
- $scopeManager = new MockScopeManager();
- $scopeManager->activate($span);
- $scope = $scopeManager->getActive();
- $scopeManager->deactivate($scope);
-
- $this->assertNull($scopeManager->getActive());
- }
-}
diff --git a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanContextTest.php b/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanContextTest.php
deleted file mode 100644
index 501450b24..000000000
--- a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanContextTest.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Tests\Mock;
-
-use OpenTracing\Mock\MockSpanContext;
-use PHPUnit\Framework\TestCase;
-
-final class MockSpanContextTest extends TestCase
-{
- private const TRACE_ID = 123987;
- private const SPAN_ID = 555632;
- private const IS_SAMPLED = true;
- private const BAGGAGE_ITEM_KEY = 'test_key';
- private const BAGGAGE_ITEM_VALUE = 'test_value';
-
- public function testCreateAsRootSuccess()
- {
- $parentContext = MockSpanContext::createAsRoot();
- $childContext = MockSpanContext::createAsChildOf($parentContext);
-
- $this->assertEquals($parentContext->getTraceId(), $childContext->getTraceId());
- }
-
- public function testCreateMockSpanContextSuccess()
- {
- $spanContext = MockSpanContext::create(
- self::TRACE_ID,
- self::SPAN_ID,
- self::IS_SAMPLED,
- [self::BAGGAGE_ITEM_KEY => self::BAGGAGE_ITEM_VALUE]
- );
-
- $this->assertEquals($spanContext->getTraceId(), self::TRACE_ID);
- $this->assertEquals($spanContext->getSpanId(), self::SPAN_ID);
- $this->assertEquals($spanContext->isSampled(), self::IS_SAMPLED);
- $this->assertEquals([self::BAGGAGE_ITEM_KEY => self::BAGGAGE_ITEM_VALUE], iterator_to_array($spanContext));
- $this->assertEquals(self::BAGGAGE_ITEM_VALUE, $spanContext->getBaggageItem(self::BAGGAGE_ITEM_KEY));
- }
-
- public function testAddBaggageItemSuccess()
- {
- $spanContext = MockSpanContext::create(
- self::TRACE_ID,
- self::SPAN_ID,
- self::IS_SAMPLED
- );
- $this->assertEmpty(iterator_to_array($spanContext));
-
- $spanContext = $spanContext->withBaggageItem(self::BAGGAGE_ITEM_KEY, self::BAGGAGE_ITEM_VALUE);
- $this->assertEquals([self::BAGGAGE_ITEM_KEY => self::BAGGAGE_ITEM_VALUE], iterator_to_array($spanContext));
- }
-}
diff --git a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanTest.php b/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanTest.php
deleted file mode 100644
index 51e4b66f8..000000000
--- a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockSpanTest.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Tests\Mock;
-
-use OpenTracing\Mock\MockSpan;
-use OpenTracing\Mock\MockSpanContext;
-use PHPUnit\Framework\TestCase;
-
-/**
- * @covers MockSpan
- */
-final class MockSpanTest extends TestCase
-{
- private const OPERATION_NAME = 'test';
- private const DURATION = 10;
- private const TAG_KEY = 'test_key';
- private const TAG_VALUE = 'test_value';
- private const LOG_FIELD = 'test_log';
-
- public function testCreateSpanSuccess()
- {
- $startTime = time();
- $span = new MockSpan(self::OPERATION_NAME, MockSpanContext::createAsRoot(), $startTime);
-
- $this->assertEquals($startTime, $span->getStartTime());
- $this->assertEmpty($span->getTags());
- $this->assertEmpty($span->getLogs());
- }
-
- public function testAddTagsAndLogsToSpanSuccess()
- {
- $span = new MockSpan(self::OPERATION_NAME, MockSpanContext::createAsRoot());
-
- $span->setTag(self::TAG_KEY, self::TAG_VALUE);
- $span->log([self::LOG_FIELD]);
-
- $this->assertEquals([self::TAG_KEY => self::TAG_VALUE], $span->getTags());
- $this->assertEquals(self::LOG_FIELD, $span->getLogs()[0]['fields'][0]);
- }
-
- public function testSpanIsFinished()
- {
- $startTime = time();
- $span = new MockSpan(self::OPERATION_NAME, MockSpanContext::createAsRoot(), $startTime);
- $span->finish($startTime + self::DURATION);
-
- $this->assertTrue($span->isFinished());
- $this->assertEquals(self::DURATION, $span->getDuration());
- }
-}
diff --git a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockTracerTest.php b/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockTracerTest.php
deleted file mode 100644
index ab2faf159..000000000
--- a/vendor/opentracing/opentracing/tests/OpenTracing/Mock/MockTracerTest.php
+++ /dev/null
@@ -1,139 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Tests\Mock;
-
-use OpenTracing\InvalidReferenceArgumentException;
-use OpenTracing\UnsupportedFormatException;
-use OpenTracing\Mock\MockTracer;
-use OpenTracing\NoopSpanContext;
-use OpenTracing\Reference;
-use OpenTracing\Span;
-use OpenTracing\SpanContext;
-use PHPUnit\Framework\TestCase;
-
-/**
- * @covers MockTracer
- */
-final class MockTracerTest extends TestCase
-{
- private const OPERATION_NAME = 'test_name';
- private const FORMAT = 'test_format';
-
- public function testStartActiveSpanSuccess()
- {
- $tracer = new MockTracer();
- $scope = $tracer->startActiveSpan(self::OPERATION_NAME);
- $activeSpan = $tracer->getActiveSpan();
-
- $this->assertEquals($scope->getSpan(), $activeSpan);
- }
-
- public function testStartSpanSuccess()
- {
- $tracer = new MockTracer();
- $tracer->startSpan(self::OPERATION_NAME);
- $activeSpan = $tracer->getActiveSpan();
-
- $this->assertNull($activeSpan);
- }
-
- public function testStartSpanWithReference(): void
- {
- $tracer = new MockTracer();
- $tracer->startSpan('parent_name');
- /** @var Span $parentSpan */
- $parentSpan = $tracer->getSpans()[0];
- $tracer->startSpan(
- self::OPERATION_NAME,
- ['references' => [Reference::createForSpan(Reference::CHILD_OF, $parentSpan)]]
- );
- $activeSpan = $tracer->getActiveSpan();
-
- self::assertNull($activeSpan);
- }
-
- public function testStartSpanWithReferenceWithoutExpectedContextType(): void
- {
- $tracer = new MockTracer();
- $notAMockContext = new NoopSpanContext();
-
- $this->expectException(InvalidReferenceArgumentException::class);
-
- $tracer->startSpan(
- self::OPERATION_NAME,
- ['references' => [new Reference(Reference::CHILD_OF, $notAMockContext)]]
- );
- }
-
- public function testInjectWithNoInjectorsFails()
- {
- $tracer = new MockTracer();
- $span = $tracer->startSpan(self::OPERATION_NAME);
- $carrier = [];
-
- $this->expectException(UnsupportedFormatException::class);
- $tracer->inject($span->getContext(), self::FORMAT, $carrier);
- }
-
- public function testInjectSuccess()
- {
- $actualSpanContext = null;
- $actualCarrier = null;
-
- $injector = function ($spanContext, &$carrier) use (&$actualSpanContext, &$actualCarrier) {
- $actualSpanContext = $spanContext;
- $actualCarrier = $carrier;
- };
-
- $tracer = new MockTracer([self::FORMAT => $injector]);
- $span = $tracer->startSpan(self::OPERATION_NAME);
- $carrier = [];
- $tracer->inject($span->getContext(), self::FORMAT, $carrier);
-
- $this->assertSame($span->getContext(), $actualSpanContext);
- $this->assertSame($carrier, $actualCarrier);
- }
-
- public function testExtractWithNoExtractorsFails()
- {
- $tracer = new MockTracer();
- $carrier = [];
-
- $this->expectException(UnsupportedFormatException::class);
- $tracer->extract(self::FORMAT, $carrier);
- }
-
- public function testExtractSuccess()
- {
- $actualSpanContext = null;
- $actualCarrier = null;
-
- $extractor = function ($carrier) use (&$actualCarrier) {
- $actualCarrier = $carrier;
- return new NoopSpanContext();
- };
-
- $tracer = new MockTracer([], [self::FORMAT => $extractor]);
- $carrier = [
- 'TRACE_ID' => 'trace_id'
- ];
-
- $spanContext = $tracer->extract(self::FORMAT, $carrier);
-
- $this->assertInstanceOf(SpanContext::class, $spanContext);
- }
-
- public function testFlushSuccess()
- {
- $tracer = new MockTracer();
- $tracer->startSpan(self::OPERATION_NAME);
-
- $this->assertCount(1, $tracer->getSpans());
-
- $tracer->flush();
-
- $this->assertCount(0, $tracer->getSpans());
- }
-}
diff --git a/vendor/opentracing/opentracing/tests/OpenTracing/ReferenceTest.php b/vendor/opentracing/opentracing/tests/OpenTracing/ReferenceTest.php
deleted file mode 100644
index cb971a20c..000000000
--- a/vendor/opentracing/opentracing/tests/OpenTracing/ReferenceTest.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Tests;
-
-use TypeError;
-use PHPUnit\Framework\TestCase;
-use OpenTracing\Reference;
-use OpenTracing\NoopSpanContext;
-use OpenTracing\InvalidReferenceArgumentException;
-
-/**
- * @covers Reference
- */
-final class ReferenceTest extends TestCase
-{
- const REFERENCE_TYPE = 'ref_type';
-
- public function testCreateAReferenceFailsOnInvalidContext()
- {
- $context = 'invalid_context';
-
- $this->expectException(TypeError::class);
- new Reference('child_of', $context);
- }
-
- public function testCreateAReferenceFailsOnEmptyType()
- {
- $context = new NoopSpanContext();
-
- $this->expectException(InvalidReferenceArgumentException::class);
- $this->expectExceptionMessage('Reference type can not be an empty string');
- new Reference('', $context);
- }
-
- public function testAReferenceCanBeCreatedAsACustomType()
- {
- $context = new NoopSpanContext();
- $reference = new Reference(self::REFERENCE_TYPE, $context);
-
- $this->assertSame($context, $reference->getSpanContext());
- $this->assertTrue($reference->isType(self::REFERENCE_TYPE));
- }
-}
diff --git a/vendor/opentracing/opentracing/tests/OpenTracing/StartSpanOptionsTest.php b/vendor/opentracing/opentracing/tests/OpenTracing/StartSpanOptionsTest.php
deleted file mode 100644
index d7e1504a8..000000000
--- a/vendor/opentracing/opentracing/tests/OpenTracing/StartSpanOptionsTest.php
+++ /dev/null
@@ -1,129 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-namespace OpenTracing\Tests;
-
-use DateTime;
-use OpenTracing\InvalidSpanOptionException;
-use OpenTracing\NoopSpanContext;
-use OpenTracing\Reference;
-use OpenTracing\StartSpanOptions;
-use PHPUnit\Framework\TestCase;
-
-/**
- * @covers StartSpanOptions
- */
-final class StartSpanOptionsTest extends TestCase
-{
- const REFERENCE_TYPE = 'a_reference_type';
-
- public function testSpanOptionsCanNotBeCreatedDueToInvalidOption()
- {
- $this->expectException(InvalidSpanOptionException::class);
-
- StartSpanOptions::create([
- 'unknown_option' => 'value'
- ]);
- }
-
- public function testSpanOptionsWithInvalidCloseOnFinishOption()
- {
- $this->expectException(InvalidSpanOptionException::class);
-
- StartSpanOptions::create([
- 'finish_span_on_close' => 'value'
- ]);
- }
-
- public function testSpanOptionsCanNotBeCreatedBecauseInvalidStartTime()
- {
- $this->expectException(InvalidSpanOptionException::class);
-
- StartSpanOptions::create([
- 'start_time' => 'abc'
- ]);
- }
-
- /** @dataProvider validStartTime */
- public function testSpanOptionsCanBeCreatedBecauseWithValidStartTime($startTime)
- {
- $spanOptions = StartSpanOptions::create([
- 'start_time' => $startTime
- ]);
-
- $this->assertEquals($spanOptions->getStartTime(), $startTime);
- }
-
- public function validStartTime()
- {
- return [
- [new DateTime()],
- ['1499355363'],
- [1499355363],
- [1499355363.123456]
- ];
- }
-
- public function testSpanOptionsCanBeCreatedWithValidReference()
- {
- $context = new NoopSpanContext();
-
- $options = [
- 'references' => new Reference(self::REFERENCE_TYPE, $context),
- ];
-
- $spanOptions = StartSpanOptions::create($options);
- $references = $spanOptions->getReferences()[0];
-
- $this->assertTrue($references->isType(self::REFERENCE_TYPE));
- $this->assertSame($context, $references->getSpanContext());
- }
-
- public function testSpanOptionsDefaultCloseOnFinishValue()
- {
- $options = StartSpanOptions::create([]);
-
- $this->assertTrue($options->shouldFinishSpanOnClose());
- }
-
- public function testSpanOptionsWithValidFinishSpanOnClose()
- {
- $options = StartSpanOptions::create([
- 'finish_span_on_close' => false,
- ]);
-
- $this->assertFalse($options->shouldFinishSpanOnClose());
- }
-
- public function testSpanOptionsAddsANewReference()
- {
- $context1 = new NoopSpanContext();
- $spanOptions = StartSpanOptions::create([
- 'child_of' => $context1,
- ]);
- $this->assertCount(1, $spanOptions->getReferences());
-
- $context2 = new NoopSpanContext();
- $spanOptions = $spanOptions->withParent($context2);
-
- $this->assertCount(1, $spanOptions->getReferences());
- $this->assertSame($context2, $spanOptions->getReferences()[0]->getSpanContext());
- }
-
- public function testDefaultIgnoreActiveSpan()
- {
- $options = StartSpanOptions::create([]);
-
- $this->assertFalse($options->shouldIgnoreActiveSpan());
- }
-
- public function testSpanOptionsWithValidIgnoreActiveSpan()
- {
- $options = StartSpanOptions::create([
- 'ignore_active_span' => true,
- ]);
-
- $this->assertTrue($options->shouldIgnoreActiveSpan());
- }
-}