Skip to content

Bug: "failed to read CustomSettings from the Query Request" on clean Grafana install #45

@Arkwraith

Description

@Arkwraith

Summary:
I am unable to use the Golioth WebSocket datasource plugin on a current clean install of Grafana. All queries immediately fail with a backend error about CustomSettings. This happens even on a completely fresh install with no prior data, and with a minimal configuration.

Environment:

  • Grafana: 12.2.0 (also tested with latest)
  • Golioth WebSocket Datasource plugin: latest (installed via GF_INSTALL_PLUGINS)
  • Docker Compose setup (see below for config)
  • Backend WebSocket API: working and reachable, tested with ws://topology-api:5001/ws
  • No custom headers or query parameters added
  • All other datasources (Prometheus, etc.) work as expected
  • Error occurs even after deleting all Grafana data and starting from scratch

Error message (from docker logs grafana):
rpc error: code = Unknown desc = failed to read CustomSettings from the Query Request: error converting json.RawMessage to map[string]string

Sample log block:
level=error msg="Request Completed" method=POST path=/api/ds/query status=500 ... error="client: failed to query data: Failed to query data: rpc error: code = Unknown desc = failed to read CustomSettings from the Query Request: error converting json.RawMessage to map[string]string"

Troubleshooting Steps Taken:

  • Completely removed Grafana container and data (volume wipe)
  • Restarted with a named Docker volume for /var/lib/grafana
  • Minimal Docker Compose config (see below)
  • No custom headers, params, or settings in the datasource UI
  • WebSocket endpoint confirmed working with websocat and other clients
  • Tried both ws:// and wss:// (with local reverse proxy)
  • Tried on various Grafana/plugin versions
  • No other WebSocket datasource plugins are currently available/compatible

Docker Compose snippet
grafana:
image: grafana/grafana:12.2.0
container_name: grafana
ports:
- "3000:3000"
environment:
- GF_INSTALL_PLUGINS=golioth-websocket-datasource
volumes:
- grafana-data:/var/lib/grafana
depends_on:
- topology-api
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"]
interval: 30s
timeout: 5s
retries: 3
restart: unless-stopped

volumes:
grafana-data:

Request:

  • Please investigate/fix plugin backend handling of empty/missing CustomSettings
  • If a workaround exists, please document it

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions