From bc04eed6adfa34aff52d65cf5a3eaa1f8c7a0c1b Mon Sep 17 00:00:00 2001 From: awlx Date: Fri, 25 Jun 2021 11:07:37 +0200 Subject: [PATCH] Fixes PermissionDenied errors Relates to https://github.com/danopstech/starlink_exporter/issues/32 --- internal/exporter/exporter.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/internal/exporter/exporter.go b/internal/exporter/exporter.go index 9135015..8fd251d 100644 --- a/internal/exporter/exporter.go +++ b/internal/exporter/exporter.go @@ -9,6 +9,7 @@ import ( "github.com/prometheus/client_golang/prometheus" "github.com/prometheus/common/log" "google.golang.org/grpc" + "google.golang.org/grpc/status" "github.com/danopstech/starlink_exporter/pkg/spacex.com/api/device" ) @@ -287,8 +288,13 @@ func (e *Exporter) collectDishContext(ch chan<- prometheus.Metric) bool { defer cancel() resp, err := e.Client.Handle(ctx, req) if err != nil { - log.Errorf("failed to collect context from dish: %s", err.Error()) - return false + st, ok := status.FromError(err) + if ok && st.Code() == 7 { + log.Info("Got PermissionDenied for Endpoint ... continuing") + } else { + log.Errorf("failed to collect context from dish: %s", err.Error()) + return false + } } dishC := resp.GetDishGetContext()