mirror of
https://github.com/Stunkymonkey/nixos.git
synced 2025-05-23 17:35:38 +02:00
service/navidrome: enable monitoring and sharing
This commit is contained in:
parent
19f1eec29b
commit
b0c2432072
3 changed files with 1469 additions and 34 deletions
|
@ -10,7 +10,9 @@ in
|
|||
|
||||
settings = mkOption {
|
||||
type = (pkgs.formats.json { }).type;
|
||||
default = { };
|
||||
default = {
|
||||
EnableSharing = true;
|
||||
};
|
||||
example = {
|
||||
"LastFM.ApiKey" = "MYKEY";
|
||||
"LastFM.Secret" = "MYSECRET";
|
||||
|
@ -45,7 +47,7 @@ in
|
|||
Address = "127.0.0.1";
|
||||
MusicFolder = cfg.musicFolder;
|
||||
LogLevel = "info";
|
||||
# Prometheus.Enabled = config.services.prometheus.enable;
|
||||
Prometheus.Enabled = config.services.prometheus.enable;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -56,31 +58,30 @@ in
|
|||
}
|
||||
];
|
||||
|
||||
# TODO enable in 23.05
|
||||
# services.prometheus = {
|
||||
# scrapeConfigs = [
|
||||
# {
|
||||
# job_name = "navidrome";
|
||||
# static_configs = [
|
||||
# {
|
||||
# targets = [ "127.0.0.1:${toString cfg.port}" ];
|
||||
# labels = {
|
||||
# instance = config.networking.hostName;
|
||||
# };
|
||||
# }
|
||||
# ];
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
# services.grafana.provision = {
|
||||
# dashboards.settings.providers = [
|
||||
# {
|
||||
# name = "Navidrome";
|
||||
# options.path = pkgs.grafana-dashboards.navidrome;
|
||||
# disableDeletion = true;
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
services.prometheus = {
|
||||
scrapeConfigs = [
|
||||
{
|
||||
job_name = "navidrome";
|
||||
static_configs = [
|
||||
{
|
||||
targets = [ "127.0.0.1:${toString cfg.port}" ];
|
||||
labels = {
|
||||
instance = config.networking.hostName;
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
services.grafana.provision = {
|
||||
dashboards.settings.providers = [
|
||||
{
|
||||
name = "Navidrome";
|
||||
options.path = pkgs.grafana-dashboards.navidrome;
|
||||
disableDeletion = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
webapps.apps.navidrome = {
|
||||
dashboard = {
|
||||
|
|
|
@ -58,13 +58,14 @@ in
|
|||
src = ./nextcloud.json; # sadly only imported dashboards work
|
||||
});
|
||||
|
||||
# navidrome = buildGrafanaDashboard {
|
||||
# id = 18038;
|
||||
# pname = "navidrome";
|
||||
# version = "1";
|
||||
# hash = "sha256-MU890UAEI9wrnVIC/R0HkYwFa6mJ8Y7ESAWuaSQ8FQ8=";
|
||||
# };
|
||||
|
||||
navidrome = (buildGrafanaDashboard {
|
||||
id = 18038;
|
||||
pname = "navidrome";
|
||||
version = "1";
|
||||
hash = "sha256-MU890UAEI9wrnVIC/R0HkYwFa6mJ8Y7ESAWuaSQ8FQ8=";
|
||||
}).overrideAttrs (self: super: {
|
||||
src = ./navidrome.json; # sadly data source is not detected
|
||||
});
|
||||
|
||||
loki = (buildGrafanaDashboard {
|
||||
id = 13407;
|
||||
|
|
1433
pkgs/grafana-dashboards/navidrome.json
Normal file
1433
pkgs/grafana-dashboards/navidrome.json
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue