1
0
Fork 1
SimpleOtel/simple-otel.php

34 lines
868 B
PHP

<?php
/*
Plugin Name: OpenTelemetry Integration
Description: Integrate OpenTelemetry with WordPress.
Version: 1.0
Author: Colin
*/
// Ensure the autoload file is included
require_once __DIR__ . '/vendor/autoload.php';
use OpenTelemetry\SDK\Trace\TracerProviderFactory;
use OpenTelemetry\SDK\Common\Util\ShutdownHandler;
function otel_init() {
$tracerProvider = (new TracerProviderFactory())->create();
$GLOBALS['tracer'] = $tracerProvider->getTracer('wordpress');
$shutdownHandler = new ShutdownHandler($tracerProvider);
register_shutdown_function([$shutdownHandler, 'shutdown']);
}
add_action('init', 'otel_init');
function otel_trace_example() {
$tracer = $GLOBALS['tracer'];
$span = $tracer->startAndActivateSpan('example-span');
// Your custom code
$tracer->endActiveSpan();
}
add_action('wp_head', 'otel_trace_example');
?>