Grafana Loki
-
@girish Well, the most used setup with Loki is using it with promtail. Promtail resides in your agents and it pushes the logs to loki. Grafana then fetches the logs from loki. It's my understanding that both promtail and grafana support basic auth when interacting with loki
@TomsFreitas yeah, i think that's right - I've never done it because it's always just been me pushing to it from a tailscale endpoint but I can see the value there.
@girish - I think the best approach would be to leave it open (but behind SSL) and let Loki handle the auth.
No?
-
@TomsFreitas yeah, i think that's right - I've never done it because it's always just been me pushing to it from a tailscale endpoint but I can see the value there.
@girish - I think the best approach would be to leave it open (but behind SSL) and let Loki handle the auth.
No?
@doodlemania2 agree, but apparently loki doesn't have any auth of it's own - https://grafana.com/docs/loki/latest/operations/authentication/ . I guess this is why @TomsFreitas wants Cloudron to provide the auth.
-
@doodlemania2 agree, but apparently loki doesn't have any auth of it's own - https://grafana.com/docs/loki/latest/operations/authentication/ . I guess this is why @TomsFreitas wants Cloudron to provide the auth.
@girish Yes, if we could place cloudron in the middle doing authentication it would be incredible
-
@girish Yes, if we could place cloudron in the middle doing authentication it would be incredible
rats - I thought it would. Putting CR auth in front of Loki may be problematic - how would a payload or client that is pushing data to loki know that it's cloudron asking and not loki. if loki has no knowledge of auth, the inverse is problematic too.
-
Not sure what the status of https://git.cloudron.io/doodlemania2/loki is . @doodlemania2 any update?
I haven't used Loki myself but is it actually a web app?
-
It's not - it's really just an endpoint. I have used it as is for many moons and is rock solid. That said, it definitely needs an update. One of the challenges I faced is there's a LOT of changes under the covers, so I've stayed with this older version and it serves me well.
-
I revived this package by making a new one @ https://github.com/Lanhild/loki-cloudron.
I iterate on @doodlemania2 's point: It is only an endpoint. Loki itself is simply the aggregator and API that you connect to Grafana. -
@Lanhild I gave this a try, I keep getting this non-stop in console. Is this normal?
13:46:54 - level=debug ts=2025-06-25T11:46:54.799939764Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/scheduler 13:46:54 - level=debug ts=2025-06-25T11:46:54.799950054Z caller=mock.go:153 msg=Get key=collectors/scheduler wait_index=269 13:46:54 - level=debug ts=2025-06-25T11:46:54.799960534Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/compactor 13:46:54 - level=debug ts=2025-06-25T11:46:54.799965693Z caller=mock.go:153 msg=Get key=collectors/compactor wait_index=267 13:46:54 - level=debug ts=2025-06-25T11:46:54.799970983Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/ring 13:46:54 - level=debug ts=2025-06-25T11:46:54.799975492Z caller=mock.go:153 msg=Get key=collectors/ring wait_index=268 13:46:54 - level=debug ts=2025-06-25T11:46:54.900963825Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/ring 13:46:54 - level=debug ts=2025-06-25T11:46:54.901013418Z caller=mock.go:153 msg=Get key=collectors/ring wait_index=268 13:46:54 - level=debug ts=2025-06-25T11:46:54.901011464Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/distributor 13:46:54 - level=debug ts=2025-06-25T11:46:54.901046991Z caller=mock.go:153 msg=Get key=collectors/distributor wait_index=271 13:46:54 - level=debug ts=2025-06-25T11:46:54.901061147Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/scheduler 13:46:54 - level=debug ts=2025-06-25T11:46:54.901077498Z caller=mock.go:153 msg=Get key=collectors/scheduler wait_index=269
-
@Lanhild I gave this a try, I keep getting this non-stop in console. Is this normal?
13:46:54 - level=debug ts=2025-06-25T11:46:54.799939764Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/scheduler 13:46:54 - level=debug ts=2025-06-25T11:46:54.799950054Z caller=mock.go:153 msg=Get key=collectors/scheduler wait_index=269 13:46:54 - level=debug ts=2025-06-25T11:46:54.799960534Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/compactor 13:46:54 - level=debug ts=2025-06-25T11:46:54.799965693Z caller=mock.go:153 msg=Get key=collectors/compactor wait_index=267 13:46:54 - level=debug ts=2025-06-25T11:46:54.799970983Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/ring 13:46:54 - level=debug ts=2025-06-25T11:46:54.799975492Z caller=mock.go:153 msg=Get key=collectors/ring wait_index=268 13:46:54 - level=debug ts=2025-06-25T11:46:54.900963825Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/ring 13:46:54 - level=debug ts=2025-06-25T11:46:54.901013418Z caller=mock.go:153 msg=Get key=collectors/ring wait_index=268 13:46:54 - level=debug ts=2025-06-25T11:46:54.901011464Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/distributor 13:46:54 - level=debug ts=2025-06-25T11:46:54.901046991Z caller=mock.go:153 msg=Get key=collectors/distributor wait_index=271 13:46:54 - level=debug ts=2025-06-25T11:46:54.901061147Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/scheduler 13:46:54 - level=debug ts=2025-06-25T11:46:54.901077498Z caller=mock.go:153 msg=Get key=collectors/scheduler wait_index=269
-
@Lanhild I gave this a try, I keep getting this non-stop in console. Is this normal?
13:46:54 - level=debug ts=2025-06-25T11:46:54.799939764Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/scheduler 13:46:54 - level=debug ts=2025-06-25T11:46:54.799950054Z caller=mock.go:153 msg=Get key=collectors/scheduler wait_index=269 13:46:54 - level=debug ts=2025-06-25T11:46:54.799960534Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/compactor 13:46:54 - level=debug ts=2025-06-25T11:46:54.799965693Z caller=mock.go:153 msg=Get key=collectors/compactor wait_index=267 13:46:54 - level=debug ts=2025-06-25T11:46:54.799970983Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/ring 13:46:54 - level=debug ts=2025-06-25T11:46:54.799975492Z caller=mock.go:153 msg=Get key=collectors/ring wait_index=268 13:46:54 - level=debug ts=2025-06-25T11:46:54.900963825Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/ring 13:46:54 - level=debug ts=2025-06-25T11:46:54.901013418Z caller=mock.go:153 msg=Get key=collectors/ring wait_index=268 13:46:54 - level=debug ts=2025-06-25T11:46:54.901011464Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/distributor 13:46:54 - level=debug ts=2025-06-25T11:46:54.901046991Z caller=mock.go:153 msg=Get key=collectors/distributor wait_index=271 13:46:54 - level=debug ts=2025-06-25T11:46:54.901061147Z caller=mock.go:189 msg="Get - deadline exceeded" key=collectors/scheduler 13:46:54 - level=debug ts=2025-06-25T11:46:54.901077498Z caller=mock.go:153 msg=Get key=collectors/scheduler wait_index=269