nixos-config/terranix/graylog/config.nix
2021-07-14 12:12:36 +02:00

53 lines
1.6 KiB
Nix

with builtins; {
imports = [ ./provider.nix ./nginx.nix ./journald.nix ];
resource.graylog_output.stdout = {
title = "test stdout";
type = "org.graylog2.outputs.LoggingOutput";
configuration = toJSON ({ prefix = "Writing message: "; });
};
# create default index
resource.graylog_index_set.default = let
maxIndexSize = 200;
maxIndexCount = 20;
isDefault = false;
in {
title = "default";
description = ''
This is the default index set, where everything ends up which is
not specifically send to another index.
Be aware this index can only hold ${
toString (maxIndexCount * maxIndexSize)
}MB of logs!
'';
default = isDefault;
index_prefix = "test-graylog";
rotation_strategy_class =
"org.graylog2.indexer.rotation.strategies.SizeBasedRotationStrategy";
retention_strategy_class =
"org.graylog2.indexer.retention.strategies.DeletionRetentionStrategy";
index_analyzer = "standard";
index_optimization_disabled = true;
writable = true;
shards = 1;
replicas = 0;
index_optimization_max_num_segments = 1;
field_type_refresh_interval = 5000;
retention_strategy = toJSON ({
max_number_of_indices = maxIndexCount;
type =
"org.graylog2.indexer.retention.strategies.DeletionRetentionStrategyConfig";
});
rotation_strategy = toJSON ({
#max_docs_per_index = 30000000;
max_size = maxIndexSize * 1024 * 1024;
type =
"org.graylog2.indexer.rotation.strategies.SizeBasedRotationStrategyConfig";
});
};
}