Refactor OpenWRT configuration: add host argument and correct optional flag
This commit is contained in:
@@ -4,7 +4,8 @@ import.file "openwrt" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
openwrt.openwrt {
|
openwrt.openwrt {
|
||||||
forward_to = [prometheus.remote_write.metrics_service.receiver]
|
forward_to = [prometheus.remote_write.metrics_service.receiver]
|
||||||
|
host = "NAMU-PC" // Default host, can be overridden by environment variable
|
||||||
}
|
}
|
||||||
|
|
||||||
prometheus.remote_write "metrics_service" {
|
prometheus.remote_write "metrics_service" {
|
||||||
|
@@ -1,7 +1,51 @@
|
|||||||
|
import.http "libstd" {
|
||||||
|
url = "https://git.kkarolis.lt/karolis/Alloy/raw/branch/main/lib/std.alloy"
|
||||||
|
}
|
||||||
|
|
||||||
declare "openwrt" {
|
declare "openwrt" {
|
||||||
argument "forward_to" {
|
argument "forward_to" {
|
||||||
optinal = false
|
optional = false
|
||||||
comment = "Where to forward the scraped metrics"
|
comment = "Where to forward the scraped metrics"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
argument "host" {
|
||||||
|
optional = true
|
||||||
|
comment = "The host OpenWRT collector is running on"
|
||||||
|
default = sys.env("GCLOUD_FM_COLLECTOR_ID")
|
||||||
|
}
|
||||||
|
|
||||||
|
libstd.load_host_config "load_config" {
|
||||||
|
host = argument.host.value
|
||||||
|
config_file = "OpenWRT/config.yaml"
|
||||||
|
}
|
||||||
|
|
||||||
|
discovery.relabel "openwrt_node_exporter" {
|
||||||
|
targets = libstd.load_host_config.load_config.config.targets
|
||||||
|
|
||||||
|
rule {
|
||||||
|
source_labels = ["hostname"]
|
||||||
|
target_label = "__address__"
|
||||||
|
replacement = "$1:9100"
|
||||||
|
}
|
||||||
|
|
||||||
|
rule {
|
||||||
|
action = "labelmap"
|
||||||
|
regex = "hostname"
|
||||||
|
replacement = "instance"
|
||||||
|
}
|
||||||
|
|
||||||
|
rule {
|
||||||
|
action = "labeldrop"
|
||||||
|
regex = "hostname"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
prometheus.scrape "openwrt_node_exporter" {
|
||||||
|
targets = discovery.relabel.openwrt_node_exporter.output
|
||||||
|
forward_to = argument.forward_to.value
|
||||||
|
}
|
||||||
|
|
||||||
|
export "targets" {
|
||||||
|
value = discovery.relabel.openwrt_node_exporter.output
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user