Skip to content

WASP backend for VictoriaLogs (backward compatible) + dashboard#2618

Merged
skudasov merged 15 commits into
mainfrom
wasp-otel
May 29, 2026
Merged

WASP backend for VictoriaLogs (backward compatible) + dashboard#2618
skudasov merged 15 commits into
mainfrom
wasp-otel

Conversation

@skudasov
Copy link
Copy Markdown
Contributor

@skudasov skudasov commented May 29, 2026

This PR introduces new VictoriaLogs backend for WASP.
Old Loki backend still exists, and all the API stays compatible.
Dashboards are compatible except for a small difference on the VU calculation side for the current interval.

Documentation is simplified; now we can start both stacks and run tests locally to verify the metrics for both data sources.

Loki
image

VictoriaMetrics
image

@skudasov skudasov requested a review from a team as a code owner May 29, 2026 11:13
@github-actions
Copy link
Copy Markdown

👋 skudasov, thanks for creating this pull request!

To help reviewers, please consider creating future PRs as drafts first. This allows you to self-review and make any final changes before notifying the team.

Once you're ready, you can mark it as "Ready for review" to request feedback. Thanks!

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request updates the WASP observability/logging story by introducing an OTEL log backend (alongside Loki), refreshing local observability stack setup (LGTM and VictoriaMetrics+OTEL), and bumping several Go dependencies (notably OpenTelemetry).

Changes:

  • Added OTEL log streaming support to WASP generators with runtime backend selection via WASP_LOG_SEND_METHOD.
  • Replaced generated dashboard code with provisionable Grafana dashboard JSONs and added a VictoriaMetrics+VictoriaLogs+OTEL local compose stack.
  • Upgraded OpenTelemetry and other Go module dependencies across the repo.

Reviewed changes

Copilot reviewed 46 out of 58 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
wasp/wasp.go Adds OTEL client wiring and log-backend dispatch logic for generator responses/stats.
wasp/tmpl_generator.go Updates template generator example to default to OTEL config.
wasp/perf_test.go Adjusts Loki config usage and adds lint suppression comments for context usage.
wasp/otel_client.go New OTEL OTLP HTTP log client + env-based config helper.
wasp/loki_client.go Tweaks Loki config defaults/env loading and adds nil/empty URL validation.
wasp/loki_client_test.go Updates tests to use DefaultLokiConfig() directly.
wasp/Justfile Adds just recipes to bring LGTM / VictoriaMetrics stacks up/down.
wasp/go.mod Adds OTEL log dependencies and bumps various transitive versions.
wasp/examples/simple_vu/main_test.go Adds OTEL config to example generator config.
wasp/examples/simple_rps/main_test.go Adds OTEL config to example generator config.
wasp/examples/simple_rps/gun.go Replaces map[string]interface{} with map[string]any.
wasp/examples/scenario/main_test.go Adds OTEL config to scenario example.
wasp/examples/profiles/node_vu_test.go Adds OTEL config to profile example generators.
wasp/examples/profiles/node_vu_grafana_opts_test.go Adds OTEL config to profile example generators.
wasp/examples/profiles/node_rps_test.go Adds OTEL config to profile example generators.
wasp/examples/profiles/node_mixed_test.go Adds OTEL config to profile example generators.
wasp/examples/profiles/node_background_load_test.go Adds OTEL config to background/parallel profile examples.
wasp/examples/go.mod Adds OTEL log deps and bumps various indirect deps.
wasp/dashboard/panels.go Removes old grabana-based panel builder code.
wasp/dashboard/grafanasdk/panels.go Removes old grafana-foundation-sdk panel builder code.
wasp/dashboard/dashboard.json Adds a provisionable Grafana dashboard JSON for Loki.
wasp/dashboard/dashboard.go Removes old grabana-based dashboard builder/deployer code.
wasp/dashboard/cmd/main.go Removes the dashboard deployment CLI entrypoint.
wasp/dashboard-victoria-metrics/dashboard.json Adds a provisionable Grafana dashboard JSON for VictoriaLogs.
wasp/compose/docker-compose.yaml Mounts the dashboard JSON into Grafana for provisioning.
wasp/compose/conf/provisioning/datasources/loki.yaml Sets a stable Loki datasource UID (loki).
wasp/compose/conf/provisioning/dashboards/sample.yaml Adds a Grafana dashboard provider for WASP dashboards.
wasp/compose-victoria-metrics/README.md Documents the local VictoriaMetrics+VictoriaLogs+OTEL stack.
wasp/compose-victoria-metrics/otel/otel-collector-config.yaml Adds OTEL collector pipelines exporting to VM/VL.
wasp/compose-victoria-metrics/grafana/provisioning/datasources/datasources.yaml Provisions VictoriaMetrics and VictoriaLogs datasources.
wasp/compose-victoria-metrics/grafana/provisioning/dashboards/dashboards.yaml Provisions dashboards for the VictoriaMetrics stack.
wasp/compose-victoria-metrics/docker-compose.yml Adds the VictoriaMetrics/VictoriaLogs/OTEL/Grafana compose stack.
framework/go.mod Bumps OTEL + other dependencies (grpc, x/*, etc.).
framework/examples/myproject/go.mod Adds OTEL log deps + backoff v5 + bumps gateway/grpc/etc.
framework/examples/myproject_cll/go.sum Updates checksums for bumped dependencies.
framework/examples/myproject_cll/go.mod Bumps OTEL + x/* + grpc deps.
framework/examples/chip_router/go.sum Updates checksums for bumped dependencies.
framework/examples/chip_router/go.mod Bumps OTEL + x/* deps.
framework/examples/chip_ingress/go.sum Updates checksums for bumped dependencies.
framework/examples/chip_ingress/go.mod Bumps OTEL + gateway/grpc + x/* deps.
framework/components/fake/go.sum Updates checksums for bumped dependencies.
framework/components/fake/go.mod Bumps OTEL + x/* deps.
framework/components/dockercompose/go.sum Updates checksums for bumped dependencies.
framework/components/dockercompose/go.mod Bumps OTEL + gateway/grpc + x/* deps.
framework/components/chiprouter/go.sum Updates checksums for bumped dependencies.
framework/components/chiprouter/go.mod Bumps OTEL + grpc + x/* deps.
framework/clclient/gql/internal/generated/generated.go Minor import formatting change.
book/src/SUMMARY.md Removes the deleted WASP “Try it out quickly” doc from the TOC.
book/src/libs/wasp/how-to/start_local_observability_stack.md Updates local observability docs for LGTM and VictoriaMetrics+OTEL.
book/src/libs/wasp/how-to/run_included_tests.md Removes the outdated “Try it out quickly” section.
book/src/libs/wasp/how-to/overview.md Removes link to the deleted quick-start tests doc.
book/src/libs/wasp/getting_started.md Adds Just and Docker as prerequisites.
book/go.sum Updates checksums for bumped dependencies.
book/go.mod Bumps OTEL + x/* deps.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread wasp/wasp.go
Comment thread wasp/wasp.go Outdated
Comment thread wasp/wasp.go
Comment thread wasp/wasp.go Outdated
Comment thread wasp/wasp.go Outdated
Comment thread wasp/otel_client.go
Comment thread wasp/otel_client.go
Comment thread wasp/loki_client.go Outdated
Comment thread book/src/libs/wasp/how-to/start_local_observability_stack.md
Comment thread book/src/libs/wasp/how-to/start_local_observability_stack.md
skudasov and others added 6 commits May 29, 2026 13:59
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@skudasov skudasov changed the title Wasp otel WASP backend for VictoriaLogs (backward compatible) + dashboard May 29, 2026
@skudasov skudasov requested a review from ecPablo May 29, 2026 14:44
@skudasov skudasov merged commit 9dcc6dc into main May 29, 2026
66 checks passed
@skudasov skudasov deleted the wasp-otel branch May 29, 2026 14:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants