Compare commits

..

No commits in common. "c9d6f0f5e8ca5ea25dd06ba98ac454ec422e698f" and "656186389be513dc9aba622fd098ebbcf3825693" have entirely different histories.

3 changed files with 0 additions and 104 deletions

View File

@ -27,7 +27,6 @@
})
];
# TODO(zaphar): Move this to a module.
launchd.user.agents.ipfs = {
serviceConfig = {
ProgramArguments = [
@ -40,9 +39,6 @@
};
};
services.node-exporter.enable = true;
services.prometheus.enable = true;
# TODO launchd.user.agents.prometheus;
# Use a custom configuration.nix location.
# $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix

View File

@ -183,7 +183,6 @@ EOF";
environment.systemPackages = (with pkgs; [
terraform-ls
nodePackages.typescript-language-server
nodePackages.jsdoc
# TODO find a version of the julia package that will install
# on darwin and add it as an overlay
nil-pkg
@ -325,7 +324,6 @@ EOF";
modules = [
(systemModule system)
(vimModule system)
./modules/darwin-monitor.nix
./darwin-configuration.nix
];
};

View File

@ -1,98 +0,0 @@
{ pkgs, lib, config, ...}:
with lib;
{
options.services.node-exporter = {
enable = mkEnableOption "Enable the prometheus node_exporter";
listen = mkOption {
description = "[host]:port to listen on for the node_exporter";
default = "localhost:9100";
defaultText = "localhost:9100";
};
};
options.services.prometheus = {
enable = lib.mkEnableOption "Enable the prometheus server";
listen = mkOption {
description = "[host]:port to listen on for the prometheus server";
default = "localhost:9000";
defaultText = "localhost:9000";
};
settings = mkOption {
description = "The yaml configuration file settings for prometheus";
default = {
scrape_configs = [
{
job_name = "node_exporter";
scrape_interval = "30s";
metrics_path = "/metrics";
static_configs = [
{
targets = [
"${config.services.node-exporter.listen}"
];
}
];
}
];
};
defaultText = ''{
scrape_configs = [
{
job_name = "node_exporter";
scrape_interval = "30s";
metrics_path = "/metrics";
static_configs = [
{
targets = [
"${config.services.node-exporter.listen}"
];
}
];
}
];
}'';
};
dataPath = mkOption {
description = "Storage path for the tsdb";
default = "/Users/zaphar/opt/prometheus";
defaultText = "~/opt/prometheus";
};
};
config = {
launchd.user.agents.node-exporter = mkIf config.services.node-exporter.enable {
serviceConfig = {
ProgramArguments = [
"${pkgs.prometheus-node-exporter}/bin/node_exporter"
"--web.listen-address=${config.services.node-exporter.listen}"
];
KeepAlive = true;
RunAtLoad = true;
};
};
environment.etc."prometheus.yaml" = mkIf config.services.prometheus.enable {
text = (generators.toYAML {} config.services.prometheus.settings);
};
launchd.user.agents.prometheus = mkIf config.services.prometheus.enable {
serviceConfig = {
ProgramArguments = [
"${pkgs.prometheus}/bin/prometheus"
"--web.listen-address=${config.services.prometheus.listen}"
"--config.file=/etc/${config.environment.etc."prometheus.yaml".target}"
#"--storage.tsdb.path=${config.services.prometheus.dataPath}"
];
StandardOutPath = "${config.services.prometheus.dataPath}/prometheus-out.log";
StandardErrorPath = "${config.services.prometheus.dataPath}/prometheus-err.log";
WorkingDirectory=config.services.prometheus.dataPath;
KeepAlive = true;
RunAtLoad = true;
};
};
};
}