1
0
Fork 1

Update README.md

This commit is contained in:
colin 2024-07-01 18:19:00 +00:00
parent 2ec1084fff
commit e335be441c
1 changed files with 49 additions and 2 deletions

View File

@ -61,10 +61,57 @@ if (isset($GLOBALS['tracer'])) {
### Explanation ### Explanation
- **Service Name**: Set the name of the service as it will appear in your observability platform. It uses the `OTEL_SERVICE_NAME` environment variable if set; otherwise, it defaults to `default-service-name`. - **Service Name**: Set the name of the service as it will appear in your observability platform. It uses the `OTEL_SERVICE_NAME` environment variable if set; otherwise, it defaults to `default-service-name`.
- **OTLP Endpoint**: Specify the endpoint where the OpenTelemetry Collector is running. It uses the `OTEL_EXPORTER_OTLP_ENDPOINT` environment variable if set; otherwise, it defaults to `http://localhost:4317`. - **OTLP Endpoint**: Specify the endpoint where SigNoz is running. It uses the `OTEL_EXPORTER_OTLP_ENDPOINT` environment variable if set; otherwise, it defaults to `http://localhost:4317`.
You can add more configuration options as needed. The plugin will include this file and apply the configurations when it initializes. You can add more configuration options as needed. The plugin will include this file and apply the configurations when it initializes.
## Additional Information ## Additional Information
For more information on how to use and configure the Simple Otel plugin, please refer to the documentation or visit the [OpenTelemetry PHP documentation](https://opentelemetry.io/docs/php/). For more information on how to use and configure the Simple Otel plugin, please refer to the documentation or visit the [OpenTelemetry PHP documentation](https://opentelemetry.io/docs/php/).
## Example `simple-otel.php` Plugin File
Here is an example of what the `simple-otel.php` plugin file might look like:
```php
<?php
/*
Plugin Name: Simple Otel
Description: Integrate OpenTelemetry with WordPress.
Version: 1.0
Author: Your Name
*/
// Ensure the autoload file is included
require_once __DIR__ . '/vendor/autoload.php';
require_once __DIR__ . '/config.php';
use OpenTelemetry\SDK\Trace\TracerProvider;
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
use OpenTelemetry\Contrib\OtlpGrpc\Exporter as OtlpGrpcExporter;
// Create an OTLP GRPC exporter
$otlpExporter = new OtlpGrpcExporter([
'endpoint' => $otel_exporter_otlp_endpoint,
]);
// Create a tracer provider with the OTLP exporter
$tracerProvider = new TracerProvider(
new SimpleSpanProcessor($otlpExporter)
);
// Register the tracer provider globally
\OpenTelemetry\API\Globals::setTracerProvider($tracerProvider);
// Example usage of the tracer
function otel_trace_example() {
$tracer = \OpenTelemetry\API\Globals::tracerProvider()->getTracer('example-tracer');
$span = $tracer->startAndActivateSpan('example-span');
// Your custom code here
$span->end();
}
add_action('wp_head', 'otel_trace_example');
?>
```
By following these instructions, you can set up the Simple Otel plugin to send telemetry data directly to SigNoz without the need for an intermediate OpenTelemetry Collector.