github jaegertracing/jaeger v2.15.0
Release v2.15.0

6 hours ago

Backend Changes

⛔ Breaking Changes

  • Restrict trace/metric storage configs to allow exactly one backend type (@yurishkuro in #7875)

✨ New Features

🐞 Bug fixes, Minor Improvements

  • [fix] return empty array instead of nil from api/v3/services (@dee077 in #7926)
  • [fix] return empty array instead of nil from queryservice.getservices (@sujalshah-bit in #7925)
  • [fix] always return empty services list when none exist (@Sudhanshu-NITR in #7929)
  • [fix] ensure badger maintenance is stopped before existing close() (@Yashika0724 in #7940)
  • Use lazy initialization for storage factory (@Copilot in #7887)

🚧 Experimental Features

  • [clickhouse] add materialized view for event attribute metadata (@mahadzaryab1 in #7923)
  • [clickhouse] rework clickhouse attributes to look up type for string attributes (@mahadzaryab1 in #7815)
  • [mcp] add get_span_names tool for discovering span names (@sajal004004 in #7909)
  • Use opentelemetry span_name terminology in jaegermcp extension (@Copilot in #7916)
  • [mcp] implement get_critical_path tool (phase 3 steps 8-9) (@Copilot in #7857)
  • [clickhouse][chore] update unit tests snapshots to handle multiple queries (@mahadzaryab1 in #7865)
  • [mcp] get_services tool for service discovery (@Copilot in #7864)
  • [mcp] add cors setting and fix null array errors (@yurishkuro in #7863)
  • [mcp] get_trace_topology tool (phase 3 step 7) (@Copilot in #7862)
  • [mcp] phase 2 steps 5-6: get_span_details and get_trace_errors tools (@Copilot in #7859)
  • [mcp] phase 2 step 4: search_traces (@Copilot in #7858)
  • [clickhouse][chore] update test driver to handle multiple queries (@mahadzaryab1 in #7839)
  • [mcp] phase 2 step 3: storage integration (@Copilot in #7849)
  • Mcp server/phase 1.2: sdk integration with streamable http transport (@Copilot in #7846)
  • Mcp server scaffolding (@Copilot in #7842)
  • [clickhouse] move to snapshot testing in unit tests for clickhouse queries (@mahadzaryab1 in #7831)

👷 CI Improvements

⚙️ Refactoring

  • Enable confusing-naming linter rule (@SamyakBorkar in #7949)
  • Replace panic calls with proper error handling (@aaryan359 in #7956)
  • Fix time-naming linter violation in search_traces.go (@jkowall in #7913)
  • [badger][v2] refactor factory signatures to use telemetry settings (@iypetrov in #7902)
  • [cassandra] add omitempty notation for keyvalue and marshaller/unmarshaller for traceid (@Manik2708 in #7867)
  • Converge status reporting to collector framework (@yurishkuro in #7890)
  • [chore] move query service to higher location (@yurishkuro in #7854)
  • [chore] remove v1 queryservice package (@Copilot in #7845)

Documentation

📊 UI Changes

✨ New Features

🐞 Bug fixes, Minor Improvements

🚧 Experimental Features

  • [otel migration] add runtime schema validation to v3 api client (@yurishkuro in #3448)
  • [otel migration] phase 3.1: add jaegerclient v3 and use for services / operations (@yurishkuro in #3329)
  • [otel] add more details to phase-3 (@yurishkuro in #3323)
  • Otel migration - complete phase 2 validation (@yurishkuro in #3319)
  • Clean up of opentracing/opentelemetry nomenclature (@yurishkuro in #3316)
  • Finalize dual use of opentracing/opentelemetry nomenclature (@yurishkuro in #3311)
  • Migrate virtualizedtraceview and dependent components to iotelspan (@Copilot in #3289)
  • Enhance otel domain model with more derived data (@yurishkuro in #3292)
  • Implement phase 2 for spandetail component (@Copilot in #3275)

👷 CI Improvements

⚙️ Refactoring

  • Refactor: update detailspanel to functional component (@Harshdev098 in #3358)
  • Update @types/redux-actions to v2.6.5 (@Parship12 in #3498)
  • Refactor(plexus): convert svgedgeslayer from class to functional component (@thc1006 in #3409)
  • Refactor accordionlinks to functional component (@aaryan359 in #3406)
  • Convert measurablenodeslayer to functional component (@Parship12 in #3429)
  • Refactoring: converted referencebutton from class based to functional component (@gulshank0 in #3350)
  • Remove reducers/services.ts (@yurishkuro in #3455)
  • [chore] remove history from resultitem (@insane-22 in #3361)
  • Replace @sentry/browser with generic internal error capture implementation (@Copilot in #3226)
  • Refactor: convert diffnode to functional component (@hxrshxz in #3343)
  • Refactor: convert hopsselector selector to functional component (@hxrshxz in #3340)
  • Refactor: convert app/index.tsx file's class based to functional component (@gulshank0 in #3342)
  • Convert the htmllayersgroup from class to functional component (@Parship12 in #3351)
  • Convert the htmllayer from class to functional component (@Parship12 in #3345)
  • Remove history from resultitemtitle (@Parship12 in #3312)
  • Convert searchform to functional component (@yurishkuro in #3326)
  • Convert remaining files in searchtrace page to typescript (@yurishkuro in #3325)
  • Convert tracepage to otel model (@yurishkuro in #3309)
  • [chore] migrate few more components to otel model (@yurishkuro in #3308)
  • Migrate tracepageheader to otel model (@yurishkuro in #3307)
  • Migrate trace-dag files to otel types per adr 0002 (@Copilot in #3299)
  • Convert otel model to use strongly typed time/duration fields (@yurishkuro in #3304)
  • Upgrade searchresults components to accept ioteltrace (@Copilot in #3300)
  • Upgrade critical path calculations to otel model (@yurishkuro in #3301)
  • Fix for bug introduced in previous refactoring (@yurishkuro in #3298)
  • Fully upgrade tracetimelineviewer to otel model (@yurishkuro in #3297)
  • Move critical path types to their own domain model file (@yurishkuro in #3296)
  • Rename domain type link to hyperlink and upgrade link-getter to otel (@yurishkuro in #3295)
  • Rename otel traceid/spanid to traceid/spanid to match legacy domain model (@yurishkuro in #3294)
  • Rename pure typescript files to have .ts extension, not .tsx (@yurishkuro in #3290)

Don't miss a new jaeger release

NewReleases is sending notifications on new releases.