Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/affordablemobiles/opentelemetry-operations-php

OpenTelemetry Integration with Google Cloud Operations Suite for PHP
https://github.com/affordablemobiles/opentelemetry-operations-php

google-cloud google-cloud-trace opentelemetry opentelemetry-exporter php

Last synced: about 1 month ago
JSON representation

OpenTelemetry Integration with Google Cloud Operations Suite for PHP

Awesome Lists containing this project

README

        

# Open-Telemetry Operations Exporters for PHP

Provides OpenTelemetry PHP exporters for Google Cloud Platform [operation suite](https://cloud.google.com/products/operations) products.

## Installation

Available via composer as `affordablemobiles/opentelemetry-operations-php`.

## Usage

Example usage:

```php
use AffordableMobiles\GServerlessSupportLaravel\Trace\Propagator\CloudTracePropagator;
use AffordableMobiles\OpenTelemetry\CloudTrace\SpanExporterFactory;
use OpenTelemetry\SDK\Sdk;
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
use OpenTelemetry\SDK\Trace\Sampler\ParentBased;
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
use OpenTelemetry\SDK\Trace\TracerProviderBuilder;

$propagator = CloudTracePropagator::getInstance();

$spanProcessor = new SimpleSpanProcessor(
(new SpanExporterFactory())->create(),
);

$sampler = new ParentBased(
new AlwaysOnSampler(),
);

$tracerProvider = (new TracerProviderBuilder())
->addSpanProcessor($spanProcessor)
->setSampler($sampler)
->build()
;

Sdk::builder()
->setTracerProvider($tracerProvider)
->setPropagator($propagator)
->setAutoShutdown(true)
->buildAndRegisterGlobal()
;
```