rico1: add prometheus

This commit is contained in:
Adithya 2024-10-27 18:37:28 +05:30
parent 203dfe739d
commit 337f17faac
Signed by: adtya
GPG key ID: B8857BFBA2C47B9C
3 changed files with 116 additions and 1 deletions

View file

@ -79,7 +79,7 @@ in
"frp.labs.adtya.xyz" = "10.10.10.10";
"grafana.labs.adtya.xyz" = "10.10.10.11";
"loki.labs.adtya.xyz" = "10.10.10.11";
"prometheus.labs.adtya.xyz" = "10.10.10.10";
"prometheus.labs.adtya.xyz" = "10.10.10.11";
"transmission.labs.adtya.xyz" = "10.10.10.14";
"jellyfin.labs.adtya.xyz" = "10.10.10.14";
"radarr.labs.adtya.xyz" = "10.10.10.14";

View file

@ -6,6 +6,7 @@ _: {
./alertmanager.nix
./blocky.nix
./grafana.nix
./prometheus.nix
./loki
../../../shared/prometheus-exporters.nix
../../../shared/promtail.nix

View file

@ -0,0 +1,114 @@
_:
let
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
domainName = "prometheus.labs.adtya.xyz";
in
{
services = {
caddy = {
virtualHosts."${domainName}" = {
logFormat = logFormat domainName;
extraConfig = ''
reverse_proxy 127.0.0.1:9090
'';
};
};
prometheus = {
enable = true;
listenAddress = "127.0.0.1";
port = 9090;
globalConfig = {
evaluation_interval = "15s";
scrape_interval = "15s";
};
alertmanagers = [
{
scheme = "https";
static_configs = [
{ targets = [ "alertmanager.labs.adtya.xyz" ]; }
];
}
];
scrapeConfigs = [
{
job_name = "ntfy";
scheme = "https";
metrics_path = "/ntfy-metrics";
static_configs = [
{ targets = [ "wynne.labs.adtya.xyz" ]; }
];
}
{
job_name = "caddy";
scheme = "https";
metrics_path = "/caddy-metrics";
static_configs = [
{ targets = [ "rico0.labs.adtya.xyz" ]; }
{ targets = [ "rico1.labs.adtya.xyz" ]; }
{ targets = [ "rico2.labs.adtya.xyz" ]; }
{ targets = [ "wynne.labs.adtya.xyz" ]; }
{ targets = [ "layne.labs.adtya.xyz" ]; }
];
}
{
job_name = "postgres";
scheme = "https";
metrics_path = "/postgres-metrics";
static_configs = [
{ targets = [ "wynne.labs.adtya.xyz" ]; }
];
}
{
job_name = "systemd";
scheme = "https";
metrics_path = "/systemd-metrics";
static_configs = [
{ targets = [ "rico0.labs.adtya.xyz" ]; }
{ targets = [ "rico1.labs.adtya.xyz" ]; }
{ targets = [ "rico2.labs.adtya.xyz" ]; }
{ targets = [ "wynne.labs.adtya.xyz" ]; }
{ targets = [ "layne.labs.adtya.xyz" ]; }
];
}
{
job_name = "smartctl";
scheme = "https";
metrics_path = "/smartctl-metrics";
static_configs = [
{ targets = [ "rico0.labs.adtya.xyz" ]; }
{ targets = [ "rico1.labs.adtya.xyz" ]; }
{ targets = [ "rico2.labs.adtya.xyz" ]; }
{ targets = [ "wynne.labs.adtya.xyz" ]; }
{ targets = [ "wynne.labs.adtya.xyz" ]; }
{ targets = [ "layne.labs.adtya.xyz" ]; }
];
}
{
job_name = "node";
scheme = "https";
static_configs = [
{ targets = [ "rico0.labs.adtya.xyz" ]; }
{ targets = [ "rico1.labs.adtya.xyz" ]; }
{ targets = [ "rico2.labs.adtya.xyz" ]; }
{ targets = [ "wynne.labs.adtya.xyz" ]; }
{ targets = [ "layne.labs.adtya.xyz" ]; }
];
}
{
job_name = "frp";
scheme = "https";
static_configs = [
{ targets = [ "frp.labs.adtya.xyz" ]; }
];
}
{
job_name = "blocky";
scheme = "https";
static_configs = [
{ targets = [ "blocky.labs.adtya.xyz" ]; }
];
}
];
};
};
}