-
Notifications
You must be signed in to change notification settings - Fork 0
/
squirreldb.conf
145 lines (135 loc) · 5.48 KB
/
squirreldb.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
# SquirrelDB configuration files are written in yaml.
# All configuration can be overriden by environment variables. The environment variable is
# * Prefixed by SQUIRRELDB_
# * All letters converted to uppercase
# * Each yaml indentation is converted to an "_"
#
# For example, cassandra.addresses becomes:
# SQUIRRELDB_CASSANDRA_ADDRESSES=localhost:9042
# Prometheus API listen address, used for remote storage and PromQL requests.
# A Prometheus exporter (of SquirrelDB internal metrics) will be exported on /metrics.
#
# listen_address: "localhost:9201"
# SquirrelDB supports multiple tenants. When the HEADER "X-SquirrelDB-Tenant" is added
# to requests, only metrics matching the tenant are returned and metrics written are
# associated to the tenant.
# Setting the header "X-SquirrelDB-Tenant: tenant1", is similar to adding a label
# __account_id="tenant1". The tenant label name can be configured with tenant_label_name.
# tenant_label_name: "__account_id"
#
# You may want to require all requests to set the tenant header.
# When this setting is enabled, SquirrelDB will return an error to queries
# and write requests that don't provide the tenant header.
# require_tenant_header: false
# SquirrelDB use Prometheus remote storage to read/write points from/into SquirrelDB,
# the endpoints are at /api/v1/read and /api/v1/write.
# https://prometheus.io/docs/prometheus/latest/storage/#remote-storage-integrations
#
# remote_storage:
#
# # Maximum number of concurrent remote read and write calls. If set to N, allows 2*N concurrent requests,
# # with N reads and N writes. If set to 0, defaults to 2 * number of CPUs.
# max_concurrent_requests: 0
# SquirrelDB exports a PromQL endpoint at /api/v1/query and /api/v1/query_range.
#
# promql:
#
# # Maximum number of points one PromQL may evaluate. Once reached, it will abort the query.
# # 0 means no limit.
# max_evaluated_points: 0
#
# # Maximum number of series one PromQL may evaluate. Once reached, it will abort the query.
# # 0 means no limit.
# max_evaluated_series: 0
# SquirrelDB uses Cassandra to store points.
#
# cassandra:
#
# # List of Cassandra servers to connect to, by default localhost:9042 is used. You may provide
# # a list of servers if using a cluster.
# addresses:
# - "cassandra1:9042"
# - "cassandra2:9042"
#
# # Cassandra credentials.
# username: ""
# password: ""
#
# # TLS options, cert_path, key_path and ca_path are optional depending on server config.
# cert_path: ""
# key_path: ""
# ca_path: ""
# # Verify the hostname and server cert.
# enable_host_verification: true
#
# # Name of the Cassandra Keyspace.
# keyspace: "squirreldb"
#
# # Replication factor. This must be one for a single server Cassandra.
# # It should be 3 when your Cassandra cluster contains at least 3 servers.
# # Note: this value is only used when creating the keyspace.
# replication_factor: 1
#
# # Metric points are automatically deleted after this delay in seconds.
# # Note: the expiration is set when points is written, changing this value
# # will only impact points written *after* the change.
# default_time_to_live: 8760h # one year
#
# # To improve query of large period of time, SquirrelDB do some
# # pre-aggregation of data.
# aggregate:
#
# # To avoid overloading the system, SquirrelDB allows to throttle the aggregation.
# # This setting configures the target time for aggregating one unit of work (1 days
# # by default, see size settings).
# # The aggregation will take at least this amount of time, if well configured exactly this time.
# # If the aggregation is too slow, it will take more than this duration, but then the
# # aggregation will run at full speed.
# intended_duration: 10m
# For performance reasons, SquirrelDB does not write points immediately in Cassandra.
# SquirrelDB receive points by timestamp, usually multiple metrics for the same timestamp.
# But in Cassandra, it write points by metrics. One batch of points for the same metrics and multiple timestamp.
# To perform this conversion, SquirrelDB needs to store pending points in memory and
# write them to Cassandra periodically.
#
# batch:
#
# # Configure the time (in second) to keep points in memory before writing to Cassandra
# # Note: this value must be the same between all SquirrelDB.
# # Smaller value means:
# # * less memory usage,
# # * fewer points in memory (less data loss in case of crash)
# # * less performance
# # * more disk usage
# size: 15m
# The default memory store for batch of points is the SquirrelDB process memory.
# You could store them in Redis
# redis:
#
# # If the address is unset, Redis is not used. If set to a single address
# # (e.g. ["localhost:6379"]) then Redis will be used, as a Redis cluster if
# # possible or a simple single-node Redis. If set to more than one address,
# # Redis cluster is used.
# addresses: []
#
# # Redis credentials.
# username: myuser
# password: mypass
#
# # Enable SSL.
# ssl: true
# # Whether SquirrelDB should ignore SSL certificate errors.
# ssl_insecure: false
# # Certificate configuration.
# cert_path: /path/to/redis.crt
# key_path: /path/to/redis.key
# ca_path: /path/to/ca.crt
# For debugging, you may lower the log level. Only the messages that have
# a greater or equal level than the chosen one are shown.
# The supported levels are -1 (trace), 0 (debug), 1 (info), 2 (warn), 3 (error)
# log:
# level: 1
# disable_color: false
# Errors and panics are sent to Sentry if the DSN is configured.
# sentry:
# dsn: my-sentry-dsn