I have setup the signoz self hosted and a django a...
# support
w
I have setup the signoz self hosted and a django applications. I am able to see all my traces and metrics but logs are not visible can anyone tell me any possible reason for it. I have added this is gunicorn.conf.py
Copy code
import os
from opentelemetry import trace, metrics
from opentelemetry.sdk.resources import Resource
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.metrics import MeterProvider
from opentelemetry.sdk.metrics.export import PeriodicExportingMetricReader
from opentelemetry.exporter.otlp.proto.grpc.metric_exporter import OTLPMetricExporter
from opentelemetry.instrumentation.django import DjangoInstrumentor
from opentelemetry.instrumentation.logging import LoggingInstrumentor
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry import trace
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter
from opentelemetry.sdk.resources import Resource
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.instrumentation.django import DjangoInstrumentor  # Ensure to import this
from opentelemetry.instrumentation.logging import LoggingInstrumentor

def post_fork(server, worker):
    # As before, set up traces
    resource = Resource.create(attributes={
        "service.name": "iris-api-service"
    })
    trace.set_tracer_provider(TracerProvider(resource=resource))
    span_processor = BatchSpanProcessor(
        OTLPSpanExporter(endpoint=os.environ.get('OTEL_EXPORTER_OTLP_ENDPOINT'))
    )
    trace.get_tracer_provider().add_span_processor(span_processor)
    DjangoInstrumentor().instrument()
    LoggingInstrumentor().instrument(set_logging_format=True)

    # Metrics Configuration
    metrics_provider = MeterProvider(
        resource=resource,
        metric_readers=[
            PeriodicExportingMetricReader(
                OTLPMetricExporter(endpoint=os.getenv('OTEL_EXPORTER_OTLP_ENDPOINT'))
            )
        ]
    )
    metrics.set_meter_provider(metrics_provider)
Please guide here anything is missing here ?
n
On a side note did you try python autinstrumentation ? https://signoz.io/docs/userguide/python-logs-auto-instrumentation/
w
@nitya-signoz Yes I did add this
Copy code
iris_uwsgi:
    build:
      context: .
    container_name: iris_uwsgi
    ports:
      - "8080:8080"
    # entrypoint: [ "/iris/start_iris.sh" ]
    logging:
      driver: "json-file"
      options:
        max-size: "1G"
        max-file: "5"
    environment:
      - DJANGO_SETTINGS_MODULE=iris.settings
      - OTEL_SERVICE_NAME=iris-api-service
      - OTEL_EXPORTER_OTLP_ENDPOINT=<http://10.24.96.212:4317>
      - OTEL_EXPORTER_OTLP_PROTOCOL=grpc
      - OTEL_PYTHON_LOGGING_AUTO_INSTRUMENTATION_ENABLED=true
      - OTEL_LOGS_EXPORTER=console,otlp
But still not able to receive logs on signoz dashboard
n
Hey @Work were you able to resolve the issue?