Grafana Alerting: panic: runtime error: invalid memory address or nil pointer dereference

When using alert for my self-designed plugin, I got following issue, and then my plugin crashed and restarted.
I confirmed the response of the same reuqest is not empty in explore.

panic: runtime error: invalid memory address or nil pointer dereference logger=plugin.nvmetrics-datasource
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xa4e9d4] logger=plugin.nvmetrics-datasource

023-03-28 15:35:55 DEBUG[03-28|07:35:55] Updating last user_seen_at               logger=context userId=1 orgId=1 uname=admin user_id=1
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] fetch permissions from store             logger=accesscontrol.service key=rbac-permissions-1-user-1
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] cache permissions                        logger=accesscontrol.service key=rbac-permissions-1-user-1
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] matched scope                            logger=accesscontrol.evaluator user scope=datasources:* target scope=datasources:uid:uIalMfa4k
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] Querying for data source via SQL store   logger=datasources uid=uIalMfa4k orgId=1
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] got secret value                         logger=secrets.kvstore orgId=1 type=datasource namespace="NVMetrics datasource"
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] panic: runtime error: invalid memory address or nil pointer dereference logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xa4e9d4] logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]                                          logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] goroutine 25 [running]:                  logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grafana/grafana-starter-datasource-backend/pkg/plugin.(*NVMetricsDatasource).QueryData(0x40000acae0, {0xccd018, 0x400047b1d0}, 0x40000a5a40) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/project/nvmetricsGrafana/GrafanaPlugins/grafana-nvmetrics-datasource-plugin/pkg/plugin/plugin.go:94 +0x54 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grafana/grafana-plugin-sdk-go/internal/automanagement.(*Manager).QueryData(0x4000096730, {0xccd018, 0x400047b1d0}, 0x40000a5a40) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grafana/grafana-plugin-sdk-go@v0.156.0/internal/automanagement/manager.go:33 +0x16c logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grafana/grafana-plugin-sdk-go/backend.(*dataSDKAdapter).QueryData(0x4000096790, {0xccd018, 0x400047b1d0}, 0x40000a4870) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grafana/grafana-plugin-sdk-go@v0.156.0/backend/data_adapter.go:45 +0xac logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grafana/grafana-plugin-sdk-go/backend/grpcplugin.(*dataGRPCServer).QueryData(0x4000096a10, {0xccd018, 0x40000af920}, 0x40000a4870) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grafana/grafana-plugin-sdk-go@v0.156.0/backend/grpcplugin/grpc_data.go:47 +0x60 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grafana/grafana-plugin-sdk-go/genproto/pluginv2._Data_QueryData_Handler.func1({0xccd018, 0x40000af920}, {0xb9d4e0, 0x40000a4870}) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grafana/grafana-plugin-sdk-go@v0.156.0/genproto/pluginv2/backend_grpc.pb.go:195 +0xb0 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grpc-ecosystem/go-grpc-prometheus.(*ServerMetrics).UnaryServerInterceptor.func1({0xccd018, 0x40000af920}, {0xb9d4e0, 0x40000a4870}, 0x4000098a00, 0x40000aca50) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-prometheus@v1.2.0/server_metrics.go:107 +0x9c logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0xccd018, 0x40000af920}, {0xb9d4e0, 0x40000a4870}) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x78 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1({0xccd018, 0x40000af920}, {0xb9d4e0, 0x40000a4870}, 0x4000098a00, 0x40000aca50) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:34 +0x118 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] github.com/grafana/grafana-plugin-sdk-go/genproto/pluginv2._Data_QueryData_Handler({0xafed80, 0x4000096a10}, {0xccd018, 0x40000af920}, 0x40000e9d50, 0x40000aecc0) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/github.com/grafana/grafana-plugin-sdk-go@v0.156.0/genproto/pluginv2/backend_grpc.pb.go:197 +0x1e8 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] google.golang.org/grpc.(*Server).processUnaryRPC(0x4000422000, {0xcd1878, 0x40003961a0}, 0x40000fa480, 0x40000af3e0, 0x127cce0, 0x0) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/google.golang.org/grpc@v1.48.0/server.go:1295 +0xf14 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] google.golang.org/grpc.(*Server).handleStream(0x4000422000, {0xcd1878, 0x40003961a0}, 0x40000fa480, 0x0) logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/google.golang.org/grpc@v1.48.0/server.go:1636 +0x710 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] google.golang.org/grpc.(*Server).serveStreams.func1.2() logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/google.golang.org/grpc@v1.48.0/server.go:932 +0xc4 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] created by google.golang.org/grpc.(*Server).serveStreams.func1 logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55]       /Users/fayel/workspace/go/pkg/mod/google.golang.org/grpc@v1.48.0/server.go:930 +0x3cc logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] Data source queried                      logger=expr datasourceType=nvmetrics-datasource queryRefId=A datasourceUid=uIalMfa4k datasourceVersion=3 responseType=error
2023-03-28 15:35:55 ERROR[03-28|07:35:55] Failed to evaluate queries and expressions: [plugin.downstreamError] failed to query data: Failed to query data: rpc error: code = Unavailable desc = error reading from server: EOF logger=context userId=1 orgId=1 uname=admin error="Failed to evaluate queries and expressions: [plugin.downstreamError] failed to query data: Failed to query data: rpc error: code = Unavailable desc = error reading from server: EOF" remote_addr=172.18.0.1 traceID=
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] token needs rotation                     logger=auth tokenId=1 authTokenSeen=true rotatedAt=2023-03-28T07:05:55Z
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] plugin process exited                    logger=plugin.nvmetrics-datasource path=/var/lib/grafana/plugins/grafana-nvmetrics-datasource-plugin/dist/gpx_nvmetrics-datasource_linux_arm64 pid=72 error="exit status 2"
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] auth token rotated                       logger=auth affected=1 auth_token_id=1 userId=1
2023-03-28 15:35:55 INFO [03-28|07:35:55] New token                                logger=context userId=1 orgId=1 uname=admin unhashed token=xxxxxxxx
2023-03-28 15:35:55 ERROR[03-28|07:35:55] Request Completed                        logger=context userId=1 orgId=1 uname=admin method=POST path=/api/v1/eval status=500 remote_addr=172.18.0.1 time_ms=97 duration=97.963458ms size=398 referer=http://localhost:3200/alerting/new handler=/api/v1/eval
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] seen token                               logger=auth tokenId=1 userId=1 clientIP=172.18.0.1 userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36" authToken=xxxxxxxxx
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] using cached permissions                 logger=accesscontrol.service key=rbac-permissions-1-user-1
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] Restarting plugin                        logger=plugin.nvmetrics-datasource
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] starting plugin                          logger=plugin.nvmetrics-datasource path=/var/lib/grafana/plugins/grafana-nvmetrics-datasource-plugin/dist/gpx_nvmetrics-datasource_linux_arm64 args=[/var/lib/grafana/plugins/grafana-nvmetrics-datasource-plugin/dist/gpx_nvmetrics-datasource_linux_arm64]
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] plugin started                           logger=plugin.nvmetrics-datasource path=/var/lib/grafana/plugins/grafana-nvmetrics-datasource-plugin/dist/gpx_nvmetrics-datasource_linux_arm64 pid=80
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] waiting for RPC address                  logger=plugin.nvmetrics-datasource path=/var/lib/grafana/plugins/grafana-nvmetrics-datasource-plugin/dist/gpx_nvmetrics-datasource_linux_arm64
2023-03-28 15:35:55 INFO [03-28|07:35:55] Profiler                                 logger=plugin.nvmetrics-datasource enabled=false
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] Serving plugin                           logger=plugin.nvmetrics-datasource plugins="[diagnostics resource data stream]"
2023-03-28 15:35:55 DEBUG[03-28|07:35:55] plugin address                           logger=plugin.nvmetrics-datasource address=/tmp/plugin597063049 network=unix

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.