feat: add log setup code
This commit is contained in:
parent
c2d1ec927d
commit
cf6ebf700f
|
@ -48,10 +48,15 @@ import os
|
||||||
os.environ["AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED"] = "true"
|
os.environ["AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED"] = "true"
|
||||||
os.environ["AZURE_SDK_TRACING_IMPLEMENTATION"] = "opentelemetry"
|
os.environ["AZURE_SDK_TRACING_IMPLEMENTATION"] = "opentelemetry"
|
||||||
|
|
||||||
|
from opentelemetry import trace, _events
|
||||||
from opentelemetry.sdk.resources import Resource
|
from opentelemetry.sdk.resources import Resource
|
||||||
from opentelemetry.sdk.trace import TracerProvider
|
from opentelemetry.sdk.trace import TracerProvider
|
||||||
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
||||||
|
from opentelemetry.sdk._logs import LoggerProvider
|
||||||
|
from opentelemetry.sdk._logs.export import BatchLogRecordProcessor
|
||||||
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
||||||
|
from opentelemetry.sdk._events import EventLoggerProvider
|
||||||
|
from opentelemetry.exporter.otlp.proto.http._log_exporter import OTLPLogExporter
|
||||||
|
|
||||||
resource = Resource(attributes={
|
resource = Resource(attributes={
|
||||||
"service.name": "opentelemetry-instrumentation-azure-ai-agents"
|
"service.name": "opentelemetry-instrumentation-azure-ai-agents"
|
||||||
|
@ -64,6 +69,12 @@ processor = BatchSpanProcessor(otlp_exporter)
|
||||||
provider.add_span_processor(processor)
|
provider.add_span_processor(processor)
|
||||||
trace.set_tracer_provider(provider)
|
trace.set_tracer_provider(provider)
|
||||||
|
|
||||||
|
logger_provider = LoggerProvider(resource=resource)
|
||||||
|
logger_provider.add_log_record_processor(
|
||||||
|
BatchLogRecordProcessor(OTLPLogExporter(endpoint="http://localhost:4318/v1/logs"))
|
||||||
|
)
|
||||||
|
_events.set_event_logger_provider(EventLoggerProvider(logger_provider))
|
||||||
|
|
||||||
from azure.ai.inference.tracing import AIInferenceInstrumentor
|
from azure.ai.inference.tracing import AIInferenceInstrumentor
|
||||||
AIInferenceInstrumentor().instrument(True)
|
AIInferenceInstrumentor().instrument(True)
|
||||||
```
|
```
|
||||||
|
@ -124,10 +135,15 @@ import os
|
||||||
os.environ["AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED"] = "true"
|
os.environ["AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED"] = "true"
|
||||||
os.environ["AZURE_SDK_TRACING_IMPLEMENTATION"] = "opentelemetry"
|
os.environ["AZURE_SDK_TRACING_IMPLEMENTATION"] = "opentelemetry"
|
||||||
|
|
||||||
|
from opentelemetry import trace, _events
|
||||||
from opentelemetry.sdk.resources import Resource
|
from opentelemetry.sdk.resources import Resource
|
||||||
from opentelemetry.sdk.trace import TracerProvider
|
from opentelemetry.sdk.trace import TracerProvider
|
||||||
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
||||||
|
from opentelemetry.sdk._logs import LoggerProvider
|
||||||
|
from opentelemetry.sdk._logs.export import BatchLogRecordProcessor
|
||||||
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
||||||
|
from opentelemetry.sdk._events import EventLoggerProvider
|
||||||
|
from opentelemetry.exporter.otlp.proto.http._log_exporter import OTLPLogExporter
|
||||||
|
|
||||||
resource = Resource(attributes={
|
resource = Resource(attributes={
|
||||||
"service.name": "opentelemetry-instrumentation-azure-ai-agents"
|
"service.name": "opentelemetry-instrumentation-azure-ai-agents"
|
||||||
|
@ -140,6 +156,12 @@ processor = BatchSpanProcessor(otlp_exporter)
|
||||||
provider.add_span_processor(processor)
|
provider.add_span_processor(processor)
|
||||||
trace.set_tracer_provider(provider)
|
trace.set_tracer_provider(provider)
|
||||||
|
|
||||||
|
logger_provider = LoggerProvider(resource=resource)
|
||||||
|
logger_provider.add_log_record_processor(
|
||||||
|
BatchLogRecordProcessor(OTLPLogExporter(endpoint="http://localhost:4318/v1/logs"))
|
||||||
|
)
|
||||||
|
_events.set_event_logger_provider(EventLoggerProvider(logger_provider))
|
||||||
|
|
||||||
from azure.ai.agents.telemetry import AIAgentsInstrumentor
|
from azure.ai.agents.telemetry import AIAgentsInstrumentor
|
||||||
AIAgentsInstrumentor().instrument(True)
|
AIAgentsInstrumentor().instrument(True)
|
||||||
```
|
```
|
||||||
|
@ -195,11 +217,15 @@ pip install opentelemetry-sdk opentelemetry-exporter-otlp-proto-http opentelemet
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
```python
|
```python
|
||||||
from opentelemetry import trace
|
from opentelemetry import trace, _events
|
||||||
from opentelemetry.sdk.resources import Resource
|
from opentelemetry.sdk.resources import Resource
|
||||||
from opentelemetry.sdk.trace import TracerProvider
|
from opentelemetry.sdk.trace import TracerProvider
|
||||||
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
||||||
|
from opentelemetry.sdk._logs import LoggerProvider
|
||||||
|
from opentelemetry.sdk._logs.export import BatchLogRecordProcessor
|
||||||
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
||||||
|
from opentelemetry.sdk._events import EventLoggerProvider
|
||||||
|
from opentelemetry.exporter.otlp.proto.http._log_exporter import OTLPLogExporter
|
||||||
|
|
||||||
resource = Resource(attributes={
|
resource = Resource(attributes={
|
||||||
"service.name": "opentelemetry-instrumentation-anthropic-traceloop"
|
"service.name": "opentelemetry-instrumentation-anthropic-traceloop"
|
||||||
|
@ -212,6 +238,12 @@ processor = BatchSpanProcessor(otlp_exporter)
|
||||||
provider.add_span_processor(processor)
|
provider.add_span_processor(processor)
|
||||||
trace.set_tracer_provider(provider)
|
trace.set_tracer_provider(provider)
|
||||||
|
|
||||||
|
logger_provider = LoggerProvider(resource=resource)
|
||||||
|
logger_provider.add_log_record_processor(
|
||||||
|
BatchLogRecordProcessor(OTLPLogExporter(endpoint="http://localhost:4318/v1/logs"))
|
||||||
|
)
|
||||||
|
_events.set_event_logger_provider(EventLoggerProvider(logger_provider))
|
||||||
|
|
||||||
from opentelemetry.instrumentation.anthropic import AnthropicInstrumentor
|
from opentelemetry.instrumentation.anthropic import AnthropicInstrumentor
|
||||||
AnthropicInstrumentor().instrument()
|
AnthropicInstrumentor().instrument()
|
||||||
```
|
```
|
||||||
|
@ -248,11 +280,15 @@ pip install opentelemetry-sdk opentelemetry-exporter-otlp-proto-http opentelemet
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
```python
|
```python
|
||||||
from opentelemetry import trace
|
from opentelemetry import trace, _events
|
||||||
from opentelemetry.sdk.resources import Resource
|
from opentelemetry.sdk.resources import Resource
|
||||||
from opentelemetry.sdk.trace import TracerProvider
|
from opentelemetry.sdk.trace import TracerProvider
|
||||||
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
||||||
|
from opentelemetry.sdk._logs import LoggerProvider
|
||||||
|
from opentelemetry.sdk._logs.export import BatchLogRecordProcessor
|
||||||
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
||||||
|
from opentelemetry.sdk._events import EventLoggerProvider
|
||||||
|
from opentelemetry.exporter.otlp.proto.http._log_exporter import OTLPLogExporter
|
||||||
|
|
||||||
resource = Resource(attributes={
|
resource = Resource(attributes={
|
||||||
"service.name": "opentelemetry-instrumentation-google-genai"
|
"service.name": "opentelemetry-instrumentation-google-genai"
|
||||||
|
@ -265,6 +301,12 @@ processor = BatchSpanProcessor(otlp_exporter)
|
||||||
provider.add_span_processor(processor)
|
provider.add_span_processor(processor)
|
||||||
trace.set_tracer_provider(provider)
|
trace.set_tracer_provider(provider)
|
||||||
|
|
||||||
|
logger_provider = LoggerProvider(resource=resource)
|
||||||
|
logger_provider.add_log_record_processor(
|
||||||
|
BatchLogRecordProcessor(OTLPLogExporter(endpoint="http://localhost:4318/v1/logs"))
|
||||||
|
)
|
||||||
|
_events.set_event_logger_provider(EventLoggerProvider(logger_provider))
|
||||||
|
|
||||||
from opentelemetry.instrumentation.google_genai import GoogleGenAiSdkInstrumentor
|
from opentelemetry.instrumentation.google_genai import GoogleGenAiSdkInstrumentor
|
||||||
GoogleGenAiSdkInstrumentor().instrument(enable_content_recording=True)
|
GoogleGenAiSdkInstrumentor().instrument(enable_content_recording=True)
|
||||||
```
|
```
|
||||||
|
@ -316,14 +358,24 @@ pip install opentelemetry-sdk opentelemetry-exporter-otlp-proto-http opentelemet
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
```python
|
```python
|
||||||
from opentelemetry import trace
|
from opentelemetry import trace, _events
|
||||||
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
from opentelemetry.sdk.resources import Resource
|
||||||
from opentelemetry.sdk.trace import TracerProvider
|
from opentelemetry.sdk.trace import TracerProvider
|
||||||
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
||||||
|
from opentelemetry.sdk._logs import LoggerProvider
|
||||||
|
from opentelemetry.sdk._logs.export import BatchLogRecordProcessor
|
||||||
|
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
||||||
|
from opentelemetry.sdk._events import EventLoggerProvider
|
||||||
|
from opentelemetry.exporter.otlp.proto.http._log_exporter import OTLPLogExporter
|
||||||
from opentelemetry.instrumentation.openai_v2 import OpenAIInstrumentor
|
from opentelemetry.instrumentation.openai_v2 import OpenAIInstrumentor
|
||||||
|
|
||||||
|
# Set up resource
|
||||||
|
resource = Resource(attributes={
|
||||||
|
"service.name": "opentelemetry-instrumentation-openai"
|
||||||
|
})
|
||||||
|
|
||||||
# Set up tracer provider
|
# Set up tracer provider
|
||||||
trace.set_tracer_provider(TracerProvider())
|
trace.set_tracer_provider(TracerProvider(resource=resource))
|
||||||
|
|
||||||
# Configure OTLP exporter
|
# Configure OTLP exporter
|
||||||
otlp_exporter = OTLPSpanExporter(
|
otlp_exporter = OTLPSpanExporter(
|
||||||
|
@ -335,6 +387,13 @@ trace.get_tracer_provider().add_span_processor(
|
||||||
BatchSpanProcessor(otlp_exporter)
|
BatchSpanProcessor(otlp_exporter)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Set up logger provider
|
||||||
|
logger_provider = LoggerProvider(resource=resource)
|
||||||
|
logger_provider.add_log_record_processor(
|
||||||
|
BatchLogRecordProcessor(OTLPLogExporter(endpoint="http://localhost:4318/v1/logs"))
|
||||||
|
)
|
||||||
|
_events.set_event_logger_provider(EventLoggerProvider(logger_provider))
|
||||||
|
|
||||||
# Enable OpenAI instrumentation
|
# Enable OpenAI instrumentation
|
||||||
OpenAIInstrumentor().instrument()
|
OpenAIInstrumentor().instrument()
|
||||||
```
|
```
|
||||||
|
@ -437,11 +496,15 @@ import os
|
||||||
os.environ["AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED"] = "true"
|
os.environ["AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED"] = "true"
|
||||||
os.environ["AZURE_SDK_TRACING_IMPLEMENTATION"] = "opentelemetry"
|
os.environ["AZURE_SDK_TRACING_IMPLEMENTATION"] = "opentelemetry"
|
||||||
|
|
||||||
from opentelemetry import trace
|
from opentelemetry import trace, _events
|
||||||
from opentelemetry.sdk.resources import Resource
|
from opentelemetry.sdk.resources import Resource
|
||||||
from opentelemetry.sdk.trace import TracerProvider
|
from opentelemetry.sdk.trace import TracerProvider
|
||||||
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
from opentelemetry.sdk.trace.export import BatchSpanProcessor
|
||||||
|
from opentelemetry.sdk._logs import LoggerProvider
|
||||||
|
from opentelemetry.sdk._logs.export import BatchLogRecordProcessor
|
||||||
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
|
||||||
|
from opentelemetry.sdk._events import EventLoggerProvider
|
||||||
|
from opentelemetry.exporter.otlp.proto.http._log_exporter import OTLPLogExporter
|
||||||
|
|
||||||
github_token = os.environ["GITHUB_TOKEN"]
|
github_token = os.environ["GITHUB_TOKEN"]
|
||||||
|
|
||||||
|
@ -456,6 +519,12 @@ processor = BatchSpanProcessor(otlp_exporter)
|
||||||
provider.add_span_processor(processor)
|
provider.add_span_processor(processor)
|
||||||
trace.set_tracer_provider(provider)
|
trace.set_tracer_provider(provider)
|
||||||
|
|
||||||
|
logger_provider = LoggerProvider(resource=resource)
|
||||||
|
logger_provider.add_log_record_processor(
|
||||||
|
BatchLogRecordProcessor(OTLPLogExporter(endpoint="http://localhost:4318/v1/logs"))
|
||||||
|
)
|
||||||
|
_events.set_event_logger_provider(EventLoggerProvider(logger_provider))
|
||||||
|
|
||||||
from azure.ai.inference.tracing import AIInferenceInstrumentor
|
from azure.ai.inference.tracing import AIInferenceInstrumentor
|
||||||
AIInferenceInstrumentor().instrument()
|
AIInferenceInstrumentor().instrument()
|
||||||
### Set up for OpenTelemetry tracing ###
|
### Set up for OpenTelemetry tracing ###
|
||||||
|
|
Loading…
Reference in New Issue