-
Notifications
You must be signed in to change notification settings - Fork 179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Send Prometheus metrics to Grafana Cloud #2994
base: main
Are you sure you want to change the base?
Conversation
00f28a0
to
4aa0e5d
Compare
a872d17
to
37758e3
Compare
4aa0e5d
to
e11c5b7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the cleanup.
I'm a bit confused on two things:
- Do we not still want the internal Grafana which is validator specific? In which case why is the dashboard disabled? If you don't want the dashboard why not remove Grafana entirely?
- The reference to the GCP secret should not be hard-coded in
linera-protocol
but instead be parameterised and injected by the caller inlinera-infra
(probablylineractl
).
|
37758e3
to
1b117c3
Compare
e11c5b7
to
188dc33
Compare
6266ccd
to
3650595
Compare
188dc33
to
17b1c8c
Compare
17b1c8c
to
ec0f9af
Compare
ec0f9af
to
e9fee28
Compare
e9fee28
to
cc8f74c
Compare
cc8f74c
to
f682033
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some comments. Also the Kubernetes workflow is not passing. Although this may be unrelated to these changes.
name: grafana-cloud-auth-secret | ||
type: kubernetes.io/basic-auth | ||
stringData: | ||
username: {{ .Values.grafanaCloudUsername | quote }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happens if this isn't specified (for example external validators which use Kuberentes?).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm currently changing this to only be created if writeToGrafanaCloud
is true
, which will only happen for internal validators
@@ -1,12 +1,12 @@ | |||
# Values for charts linera-validator for local validators. | |||
|
|||
# Linera | |||
lineraImage: "" # Is set by helmfile. | |||
lineraImage: {{ env "LINERA_HELMFILE_LINERA_IMAGE" | default "linera:latest" }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this. I'm not entirely sure if this is better or worse to be honest. On the one hand there is less indirection on the other hand configurable variables are now in more places.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it definitely looks better/less confusing than just an empty string, tbh 🤔 at least now you know what the default for this is supposed to be
It's related, actually. Working on a fix right now! |
b8d7e85
to
2001d5c
Compare
2001d5c
to
d158401
Compare
Motivation
We're migrating our internal validators to send data to Grafana Cloud.
Proposal
Starting with the local setup. This was useful to test the required changes that we'll likely need for the actual internal validator setup. We probably won't want to send metrics to Grafana Cloud from local runs all the time (specially for cost reasons), so this is disabled by default.
Grafana Cloud credentials are stored in a secret within GCP's Secret Manager. Since Grafana Cloud will be for our internal validators, then I figured storing the secret on GCP made sense.
Test Plan
Ran locally with
linera net up --kubernetes
, and saw the metrics in our Grafana Cloud instance:Release Plan
If we want to start sending metrics to Grafana Cloud from our devnet/testnet, then:
devnet
branchtestnet
branch, then