发布

  • [OPIK-3119] [BE] OpenTelemetry data mapping - handle LiveKit integration (#4174)

    frostbyte_neo 发布于 2025-11-27 14:23:00 +00:00

    • [OPIK-3119] [BE] Refactor OpenTelemetry mapping rules for modular integrations
    • Migrated OpenTelemetryMappingRule to domain.mapping package for improved organization.
    • Introduced integration-specific mapping rules (Logfire, GenAI, LiveKit, etc.) under otel package.
    • Added OpenTelemetryMappingRuleFactory to centralize rule management and enhance lookup efficiency.
    • Refactored OpenTelemetryMapper to utilize the new OpenTelemetryMappingRuleFactory and streamlined rule handling.
    • Enhanced modularity and maintainability by encapsulating rules for each integration.
    • [OPIK-3119] [BE] Fixed formatting

    • [OPIK-3119] [BE] Add LangFuse mapping rules for OpenTelemetry integration

    • Introduced LangFuseMappingRules class with a mapping rule for langfuse.observation.completion_start_time.
    • Updated OpenTelemetryMappingRuleFactory to include LangFuse mapping rules in centralized rule management.
    • [OPIK-3119] [BE] Add OpenTelemetryEventsMapper to process span events
    • Introduced OpenTelemetryEventsMapper for processing OpenTelemetry span events and converting them to metadata JSON.
    • Added OpenTelemetryMappingUtils to handle attribute extraction and JSON conversion.
    • Updated OpenTelemetryMapper to include event processing via OpenTelemetryEventsMapper.
    • Added unit tests for OpenTelemetryEventsMapper and OpenTelemetryMappingUtils for robust validation.
    • [OPIK-3119] [FE] Add EventsList to InputOutputTab for displaying OpenTelemetry events
    • Introduced EventsList component to visualize OpenTelemetry span events in the UI.
    • Integrated EventsList into InputOutputTab with a default accordion value to ensure visibility.
    • Added utility functions for mapping raw events into a human-readable format with ISO timestamps.
    • Enhanced user experience by enabling seamless event browsing within the trace details panel.
    • [OPIK-3119] [BE] Clean up imports and reformat LangFuse mapping rules
    • Removed unused imports in OpenTelemetryMapper.
    • Reformatted LangFuseMappingRules for improved readability and code style consistency.
    • [OPIK-3119] [Docs] Update LiveKit integration documentation
    • Improved example code for LiveKit Agents with clearer setup and runtime instructions.
    • Removed outdated image frame embedding and reintroduced updated visualization steps.
    • Added .env file example for environment variable configuration.
    • Enhanced "getting started" and telemetry examples for seamless developer onboarding.
    • Optimised images with calibre/image-actions

    • [OPIK-3119] [BE] Fixed imports order

    • [OPIK-3119] [P SDK] Relaxed test_evaluate_prompt_supports_multimodal_images() to avoid flaky failures.

    • [OPIK-3119] [BE] Refactor OpenTelemetryEventsMapperTest for cleaner key references

    • Replaced fully qualified key references with static imports to improve code readability and maintainability.
    • Adjusted tests to use the updated static imports for key constants.
    • [OPIK-3119] [BE] Refactor OpenTelemetry mapping modules and improve test assertions
    • Replaced repetitive object creation in mapping rules with @Builder annotation for better readability.
    • Simplified null and list checks using Apache Commons utilities.
    • Migrated assertions in tests to AssertJ for more concise and expressive validation.
    • Refactored utility classes in mapping rules for consistency and code cleanup.
    • [OPIK-3119] [BE] Fixed formatting issues

    • [OPIK-3119] [BE] Fixed according to review comments

    • [OPIK-3119] [PE] Implemented fixes to the EventsList as requested per review


    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

    下载附件