grafana: Patch victoria* dashboards to use nixpkgs' version format

This commit is contained in:
SebastianStork 2025-12-30 22:00:42 +01:00
parent 797651e316
commit 9448690045
Signed by: SebastianStork
SSH key fingerprint: SHA256:tRrGdjYOwgHxpSc/wTOZQZEjxcb15P0tyXRsbAfd+2Q
3 changed files with 29 additions and 39 deletions

View file

@ -136,25 +136,39 @@ in
};
};
# https://grafana.com/grafana/dashboards/10229-victoriametrics-single-node/
"grafana-dashboards/victoriametrics-single-node.json" = {
"grafana-dashboards/victoriametrics-single-node-patched.json" = {
enable = cfg.dashboards.victoriametrics.enable;
source = pkgs.fetchurl {
source =
pkgs.fetchurl {
name = "victoriametrics-single-node.json";
url = "https://grafana.com/api/dashboards/10229/revisions/41/download";
hash = "sha256-mwtah8A2w81WZjf5bUXoTJfS1R9UX+tua2PiDrBKJCQ=";
};
}
|> (
src:
pkgs.runCommand "victoriametrics-single-node-patched.json" { buildInputs = [ pkgs.gnused ]; } ''
sed 's/victoriametrics-logs-//g' ${src} > $out
''
);
};
# https://grafana.com/grafana/dashboards/22084-victorialogs-single-node/
"grafana-dashboards/victorialogs-single-node.json" = {
"grafana-dashboards/victorialogs-single-node-patched.json" = {
enable = cfg.dashboards.victorialogs.enable;
source = pkgs.fetchurl {
source =
pkgs.fetchurl {
name = "victorialogs-single-node.json";
url = "https://grafana.com/api/dashboards/22084/revisions/8/download";
hash = "sha256-/a3Rbp/6oyiLBnQtGupyFZW+fIHQfkyKRRTyfofxVTM=";
};
}
|> (
src:
pkgs.runCommand "victorialogs-single-node-patched.json" { buildInputs = [ pkgs.gnused ]; } ''
sed 's/victoria-logs-//g' ${src} > $out
''
);
};
# https://grafana.com/grafana/dashboards/19012-crowdsec-details-per-instance/
"grafana-dashboards/crowdsec-details-per-instance.json" = {
"grafana-dashboards/crowdsec-details-per-instance-patched.json" = {
enable = cfg.dashboards.crowdsec.enable;
source =
pkgs.fetchurl {

View file

@ -1,9 +1,4 @@
{
config,
pkgs,
lib,
...
}:
{ config, lib, ... }:
let
cfg = config.custom.web-services.victorialogs;
in
@ -42,13 +37,6 @@ in
services.victorialogs = {
enable = true;
# The victorialogs grafana-dashboard expects the version label to have the format `victoria-logs-*`
package = pkgs.victorialogs.overrideAttrs (
_: previousAttrs: {
version = "victoria-logs-${previousAttrs.version}";
__intentionallyOverridingVersion = true;
}
);
listenAddress = "localhost:${toString cfg.port}";
};

View file

@ -1,9 +1,4 @@
{
config,
pkgs,
lib,
...
}:
{ config, lib, ... }:
let
cfg = config.custom.web-services.victoriametrics;
in
@ -42,13 +37,6 @@ in
services.victoriametrics = {
enable = true;
# The victoriametrics grafana-dashboard expects the version label to have the format `victoria-metrics-*`
package = pkgs.victoriametrics.overrideAttrs (
_: previousAttrs: {
version = "victoria-metrics-${previousAttrs.version}";
__intentionallyOverridingVersion = true;
}
);
listenAddress = "localhost:${toString cfg.port}";
extraOptions = [
"-selfScrapeInterval=15s"