3.2.3. Measurement Service
3.2.3.1. Environment Variables
設定ファイル内の設定値は環境変数で上書きできます。
例えば、設定ファイルが次のようになっている場合、
[section]
attributes-1 = "value"
以下のような環境変数で設定を上書きできます。
MEASUREMENT_SECTION_ATTRIBUTES_1="overwrite"
設定値が文字列の配列である場合は、カンマ区切りでの指定が可能です。
例えば、設定ファイルが次のようになっている場合、
[section]
array-attributes = ['val1', 'val2']
環境変数に以下のような値を与えることで設定を上書きできます。
MEASUREMENT_SECTION_ARRAY_ATTRIBUTES="overwrite1,overwrite2
テーブルの配列([[section-name]]
のように二重角括弧で記述)の中の項目は、環境変数による上書きはできません。
3.2.3.2. Reference
すべての設定項目と、デフォルト値を示します。
3.2.3.2.1. api
Property |
Description |
Default |
---|---|---|
bind-address |
指定したホストとポートでAPIサーバーをリスンします。 |
127.0.0.1:8080 |
[api]
# 指定したホストとポートでAPIサーバーをリスンします。
bind-address = '127.0.0.1:8080'
3.2.3.2.2. postgres
Property |
Description |
Default |
---|---|---|
dbname |
DB名です。 |
meas |
username |
DBユーザー名です。 |
meas |
password |
DBパスワードです。 |
meas |
address |
DBアドレスです。 |
127.0.0.1:5432 |
max-idle-conns |
コネクションプールの最大アイドルコネクション数です。 |
10 |
max-open-conns |
コネクションプールの最大オープンコネクション数です。 |
10 |
max-conn-idle-time |
コネクションの最大アイドル時間です。この時間を超えると切断されます。0sは無制限です。 |
0s |
max-conn-lifetime |
コネクションの最大接続時間です。この時間を超えると切断されます。0sはデフォルト値が使用されます。 |
10m0s |
[postgres]
# DB名です。
dbname = 'meas'
# DBユーザー名です。
username = 'meas'
# DBパスワードです。
password = 'meas'
# DBアドレスです。
address = '127.0.0.1:5432'
# コネクションプールの最大アイドルコネクション数です。
max-idle-conns = 10
# コネクションプールの最大オープンコネクション数です。
max-open-conns = 10
# コネクションの最大アイドル時間です。この時間を超えると切断されます。0sは無制限です。
max-conn-idle-time = '0s'
# コネクションの最大接続時間です。この時間を超えると切断されます。0sはデフォルト値が使用されます。
max-conn-lifetime = '10m0s'
3.2.3.2.3. logger
Property |
Description |
Default |
---|---|---|
level |
ログレベルです。debug、warn、info、warn、error から指定します。 |
info |
encoding |
ログの出力フォーマットです。 json、console から指定します。 |
json |
[logger]
# ログレベルです。`debug`、`warn`、`info`、`warn`、`error` から指定します。
level = 'info'
# ログの出力フォーマットです。 `json`、`console` から指定します。
encoding = 'json'
3.2.3.2.4. auth
Property |
Description |
Default |
---|---|---|
url |
Authentication ServiceのURLです。 |
http://127.0.0.1:8081 |
[auth]
# Authentication ServiceのURLです。
url = 'http://127.0.0.1:8081'
3.2.3.2.5. nats-streaming
Property |
Description |
Default |
---|---|---|
url |
nats-streamingのURLを指定します |
nats://127.0.0.1:4222 |
username |
ユーザー名です。 |
intdash |
password |
パスワードです。 |
aptpod1234 |
cluster-id |
クラスタIDです。 |
intdash |
[nats-streaming]
# nats-streamingのURLを指定します
url = 'nats://127.0.0.1:4222'
# ユーザー名です。
username = 'intdash'
# パスワードです。
password = 'aptpod1234'
# クラスタIDです。
cluster-id = 'intdash'
3.2.3.2.6. jet-stream
Property |
Description |
Default |
---|---|---|
url |
jet-streamのURLを指定します。 |
nats://nats:4222 |
username |
ユーザー名です。 |
intdash |
password |
パスワードです。 |
aptpod1234 |
max-delivery-count |
サブスクライバーの最大配信数です。 |
3 |
max-pings-outstanding |
Pingの最大未処理数です。 |
3 |
ping-interval |
Pingの間隔です。 |
5s |
max-reconnects |
再接続回数です。 |
1800 |
reconnect-wait |
再接続間隔です。 |
2s |
[jet-stream]
# jet-streamのURLを指定します。
url = 'nats://nats:4222'
# ユーザー名です。
username = 'intdash'
# パスワードです。
password = 'aptpod1234'
# サブスクライバーの最大配信数です。
max-delivery-count = 3
# Pingの最大未処理数です。
max-pings-outstanding = 3
# Pingの間隔です。
ping-interval = '5s'
# 再接続回数です。
max-reconnects = 1800
# 再接続間隔です。
reconnect-wait = '2s'
3.2.3.2.7. data-point-external-storage
時系列データのうち一部のバイナリデータ(メディアデータなど)の保存先を外部のストレージに保存する設定です。
Property |
Description |
Default |
---|---|---|
enable |
この設定を有効にします。true から false にするときは、true の間に保存された時系列データは、時系列データ取得APIで取得できなくなることにご注意ください。false から true にする場合は影響ありません。 |
false |
read-only |
enable が true のときに有効な設定です。read-only が true の場合は、読み込みだけ外部ストレージから行います。書き込みは行いません。一度読み書きしたあとに、効果が得られなかったときなどにこの設定を true にします。 |
false |
driver |
外部ストレージのドライバです。 s3 のみサポートします。 |
s3 |
disk-cache-dir |
ディスクキャッシュで使用するディレクトリです。 |
./cache-dir |
max-disk-cache-size-mb |
ディスクキャッシュの最大キャッシュサイズ[MB]です。0以上を指定するとディスクキャッシュが有効になります。 |
0 |
extra-filter.exactly |
完全一致によるフィルター文字列です。 |
[] |
extra-filter.prefix |
前方一致によるフィルターです。 |
[] |
s3.bucket-name |
S3のバケット名です。 |
intdash-measurement-service |
s3.region |
AWSのリージョンです。 |
ap-northeast-1 |
s3.access-key |
AWSのアクセスキーです。 |
|
s3.secret-access-key |
AWSのシークレットアクセスキーです。 |
|
s3.force-path-style |
オブジェクトの指定にpath-styleのURLを使用します。 |
true |
s3.endpoint |
オブジェクトストレージのエンドポイントです。minioなど、AWS S3以外のストレージを使用する場合に指定します。 |
|
s3.directory |
永続化するデータのルートディレクトリです。 |
datapoints-external |
[data-point-external-storage]
# この設定を有効にします。
# `true` から `false` にするときは、`true` の間に保存された時系列データは、時系列データ取得APIで取得できなくなることにご注意ください。
# `false` から `true` にする場合は影響ありません。
enable = false
# `enable` が `true` のときに有効な設定です。`read-only` が `true` の場合は、読み込みだけ外部ストレージから行います。書き込みは行いません。
# 一度読み書きしたあとに、効果が得られなかったときなどにこの設定を `true` にします。
read-only = false
# 外部ストレージのドライバです `s3` のみサポートします。
driver = 's3'
# ディスクキャッシュで使用するディレクトリです。
disk-cache-dir = './cache-dir'
# ディスクキャッシュの最大キャッシュサイズ[MB]です。0以上を指定するとディスクキャッシュが有効になります。
max-disk-cache-size-mb = 0
# 追加フィルターです。
# デフォルトでは下記のデータタイプのデータを外部ストレージに移動します。これらに加えて他のデータタイプを外部ストレージに保存したい場合に指定します。
# 指定されたフィルターはOR条件です。データポイントは指定したフィルターに一つでも該当した場合は外部ストレージに永続化されます。
# - h264_annex_b
# - h264_nal_unit
# - h265_annex_b
# - jpeg
# - ivf
# - pcm
# - aac
[data-point-external-storage.extra-filter]
# 完全一致によるフィルター文字列です。
exactly = []
# 前方一致によるフィルターです。
prefix = []
# driverが `s3` のときの設定です。
[data-point-external-storage.s3]
# S3のバケット名です。
bucket-name = 'intdash-measurement-service'
# AWSのリージョンです。
region = 'ap-northeast-1'
# AWSのアクセスキーです。
access-key = ''
# AWSのシークレットアクセスキーです。
secret-access-key = ''
# オブジェクトの指定にpath-styleのURLを使用します。
force-path-style = true
# オブジェクトストレージのエンドポイントです。minioなど、AWS S3以外のストレージを使用する場合に指定します。
endpoint = ''
# 永続化するデータのルートディレクトリです。
directory = 'datapoints-external'
3.2.3.2.8. data-point-write-dbs
Property |
Description |
Default |
---|---|---|
0.driver |
時系列データのドライバーです。( timescaledb, influx, influxv2, influxshard, influxv2shard) |
influxv2 |
0.config-number |
使用する設定の番号です。例えば、ドライバーが influxv2 で、この設定が 0 の場合 [influxdbv2s.0] セクションの設定が使用されます。 |
0 |
0.data-types |
書き込むデータタイプです。 指定方法は後述のセクション「データ型の指定方法」を参照してください。 |
0-255 |
0.flush-size-kb |
フラッシュサイズ(KB)です。 |
100000 |
0.fallback |
認識できないデータタイプを受信した場合のフォールバックとして使用するかを指定します。trueにした場合、認識できないデータタイプを受信すると、この data-point-write-dbs の設定が使用されます。内部では「 data-types が0の書き込みDB」と等価です。data-types の設定で 0 を含む設定とした場合、重複して書き込みDBが登録されることにご注意ください。つまりフォールバック先として明示的に data-types で 0 を含む設定をした場合は fallback 属性は false とします。 |
false |
[data-point-write-dbs]
# 時系列データの書き込み設定です。
[data-point-write-dbs.0]
# 時系列データのドライバーです。( `timescaledb`, `influx`, `influxv2`, `influxshard`, `influxv2shard`)
driver = 'influxv2'
# 使用する設定の番号です。
# 例えば、ドライバーが `influxv2` で、この設定が `0` の場合 `[influxdbv2s.0]` セクションの設定が使用されます。
config-number = '0'
# 書き込むデータタイプです。 指定方法は後述のセクション「データ型の指定方法」を参照してください。
data-types = '0-255'
# フラッシュサイズ(KB)です。
flush-size-kb = 100000
# 認識できないデータタイプを受信した場合のフォールバックとして使用するかを指定します。
# trueにした場合、認識できないデータタイプを受信すると、この `data-point-write-dbs` の設定が使用されます。
# 内部では「 `data-types` が0の書き込みDB」と等価です。`data-types` の設定で `0` を含む設定とした場合、
# 重複して書き込みDBが登録されることにご注意ください。
# つまりフォールバック先として明示的に `data-types` で `0` を含む設定をした場合は `fallback` 属性は `false` とします。
fallback = false
3.2.3.2.9. data-point-read-dbs
Property |
Description |
Default |
---|---|---|
0.driver |
時系列データベースのドライバーです。( timescaledb, influx, influxv2, influxshard, influxv2shard) |
influxv2 |
0.config-number |
使用する設定の番号です。例えば、ドライバーが influxv2 で、この設定が 0 の場合 [influxdbv2s.0] セクションの設定が使用されます。 |
0 |
[data-point-read-dbs]
# 時系列データの読み込み設定です。
[data-point-read-dbs.0]
# 時系列データベースのドライバーです。( `timescaledb`, `influx`, `influxv2`, `influxshard`, `influxv2shard`)
driver = 'influxv2'
# 使用する設定の番号です。
# 例えば、ドライバーが `influxv2` で、この設定が `0` の場合 `[influxdbv2s.0]` セクションの設定が使用されます。
config-number = '0'
3.2.3.2.10. influxdbs
data-point-read-dbs、data-point-write-dbs の driver が influx のときの設定です。
Property |
Description |
Default |
---|---|---|
0.address |
InfluxDBのアドレスです。 |
http://127.0.0.1:8086 |
0.dbname |
InfluxDBのDB名です。 |
meas |
0.username |
InfluxDBのユーザー名です。 |
meas |
0.password |
InfluxDBのパスワードです。 |
my-super-secret |
0.timeout |
InfluxDBへの接続タイムアウト(秒)です。 |
8760h0m0s |
0.chunk-size |
InfluxDBへの読み込み時のチャンクサイズです。 |
10000 |
0.max-idle-conns |
最大アイドルコネクション数です。 |
2 |
0.max-idle-conns-per-host |
ホストあたりの最大アイドルコネクション数です。 |
2 |
0.idle-conn-timeout |
アイドルコネクションのタイムアウトです。 |
10s |
[influxdbs]
[influxdbs.0]
# InfluxDBのアドレスです。
address = 'http://127.0.0.1:8086'
# InfluxDBのDB名です。
dbname = 'meas'
# InfluxDBのユーザー名です。
username = 'meas'
# InfluxDBのパスワードです。
password = 'my-super-secret'
# InfluxDBへの接続タイムアウト(秒)です。
timeout = '8760h0m0s'
# InfluxDBへの読み込み時のチャンクサイズです。
chunk-size = 10000
# 最大アイドルコネクション数です。
max-idle-conns = 2
# ホストあたりの最大アイドルコネクション数です。
max-idle-conns-per-host = 2
# アイドルコネクションのタイムアウトです。
idle-conn-timeout = '10s'
3.2.3.2.11. influxdbv2s
data-point-read-dbs、data-point-write-dbs の driver が influxv2 のときの設定です。
Property |
Description |
Default |
---|---|---|
0.address |
InfluxDBのアドレスです。 |
http://127.0.0.1:8086 |
0.auth-token |
InfluxDBの認証トークンです。 |
my-super-secret-auth-token |
0.org |
InfluxDBへの接続時の組織名です。 |
meas |
0.bucket |
InfluxDBのバケット名です。 |
meas |
0.timeout |
InfluxDBへの接続タイムアウト(秒)です。 |
8760h0m0s |
0.max-idle-conns |
最大アイドルコネクション数です。 |
0 |
0.max-idle-conns-per-host |
ホストあたりの最大アイドルコネクション数です。 |
2 |
0.idle-conn-timeout |
アイドルコネクションのタイムアウトです。 |
10s |
[influxdbv2s]
[influxdbv2s.0]
# InfluxDBのアドレスです。
address = 'http://127.0.0.1:8086'
# InfluxDBの認証トークンです。
auth-token = 'my-super-secret-auth-token'
# InfluxDBへの接続時の組織名です。
org = 'meas'
# InfluxDBのバケット名です。
bucket = 'meas'
# InfluxDBへの接続タイムアウト(秒)です。
timeout = '8760h0m0s'
# 最大アイドルコネクション数です。
max-idle-conns = 0
# ホストあたりの最大アイドルコネクション数です。
max-idle-conns-per-host = 2
# アイドルコネクションのタイムアウトです。
idle-conn-timeout = '10s'
3.2.3.2.12. timescales
data-point-read-dbs、data-point-write-dbs の driver が timescaledb のときの設定です。
Property |
Description |
Default |
---|---|---|
0.username |
TimescaleDBのユーザー名です。 |
meas |
0.password |
TimescaleDBのパスワードです。 |
meas |
0.address |
TimescaleDBのアドレスです。 |
http://127.0.0.1:5433 |
0.dbname |
TimescaleDBのDB名です。 |
meas |
0.sslmode |
TimescaleDBのSSLModeです。(参考) https://www.postgresql.jp/document/14/html/libpq-ssl.html |
prefer |
0.pool-max-conns |
コネクションプールの最大コネクション数です。 |
10 |
0.pool-min-conns |
コネクションプールの最小コネクション数です。 |
10 |
0.chunk-time-interval |
Hypertableのchunk_time_interval値です。この値はいつでも変更可能です。 |
24h |
0.distributed |
Dsitributed Hypertable にするか否かの設定です。この値を初回起動後に変更してもTimescaleDBに適用されません。 |
false |
[timescales]
[timescales.0]
# TimescaleDBのユーザー名です。
username = 'meas'
# TimescaleDBのパスワードです。
password = 'meas'
# TimescaleDBのアドレスです。
address = 'http://127.0.0.1:5433'
# TimescaleDBのDB名です。
dbname = 'meas'
# TimescaleDBのSSLModeです。
# (参考) https://www.postgresql.jp/document/14/html/libpq-ssl.html
sslmode = 'prefer'
# コネクションプールの最大コネクション数です。
pool-max-conns = 10
# コネクションプールの最小コネクション数です。
pool-min-conns = 10
# Hypertableのchunk_time_interval値です。この値はいつでも変更可能です。
chunk-time-interval = '24h'
# Dsitributed Hypertable にするか否かの設定です。この値を初回起動後に変更してもTimescaleDBに適用されません。
distributed = false
3.2.3.2.13. influxshards
data-point-read-dbs、data-point-write-dbs の driver が influxshard のときの設定です。
Property |
Description |
Default |
---|---|---|
0.meta-address |
Redisのアドレスです。 |
127.0.0.1:6379 |
0.meta-password |
Redisのパスワードです。 |
|
0.meta-max-idle-conns |
Redisの最大アイドルコネクション数です。 |
2 |
0.meta-idle-timeout |
Redisのアイドルコネクションのタイムアウトです。 |
10s |
0.timeout |
InfluxDBへの接続タイムアウト(秒)です。 |
8760h0m0s |
0.max-idle-conns |
最大アイドルコネクション数です。 |
2 |
0.max-idle-conns-per-host |
ホストあたりの最大アイドルコネクション数です。 |
2 |
0.idle-conn-timeout |
アイドルコネクションのタイムアウトです |
10s |
0.chunk-size |
InfluxDBへの読み込み時のチャンクサイズです。 |
10000 |
0.meta-tls-config.use-tls |
RedisのTLSを有効化します。 |
false |
0.meta-tls-config.cert-file |
証明書ファイルです。 |
|
0.meta-tls-config.ca-cert-file |
CAの証明書ファイルです。 |
|
0.meta-tls-config.key-file |
キーファイルです。 |
|
0.meta-tls-config.insecure-skip-verify |
検証をスキップします。 |
false |
[influxshards]
[influxshards.0]
# Redisのアドレスです。
meta-address = '127.0.0.1:6379'
# Redisのパスワードです。
meta-password = ''
# Redisの最大アイドルコネクション数です。
meta-max-idle-conns = 2
# Redisのアイドルコネクションのタイムアウトです。
meta-idle-timeout = '10s'
# InfluxDBへの接続タイムアウト(秒)です。
timeout = '8760h0m0s'
# 最大アイドルコネクション数です。
max-idle-conns = 2
# ホストあたりの最大アイドルコネクション数です。
max-idle-conns-per-host = 2
# アイドルコネクションのタイムアウトです
idle-conn-timeout = '10s'
# InfluxDBへの読み込み時のチャンクサイズです。
chunk-size = 10000
[influxshards.0.meta-tls-config]
# RedisのTLSを有効化します。
use-tls = false
# 証明書ファイルです。
cert-file = ''
# CAの証明書ファイルです。
ca-cert-file = ''
# キーファイルです。
key-file = ''
# 検証をスキップします。
insecure-skip-verify = false
3.2.3.2.14. influxv2shards
data-point-read-dbs、data-point-write-dbs の driver が influxv2shard のときの設定です。
Property |
Description |
Default |
---|---|---|
0.meta-address |
Redisのアドレスです。 |
127.0.0.1:6379 |
0.meta-password |
Redisのパスワードです。 |
|
0.meta-max-idle-conns |
Redisの最大アイドルコネクション数です。 |
2 |
0.meta-idle-timeout |
Redisのアイドルコネクションのタイムアウトです。 |
10s |
0.timeout |
InfluxDBへの接続タイムアウト(秒)です。 |
8760h0m0s |
0.max-idle-conns |
最大アイドルコネクション数です。 |
2 |
0.max-idle-conns-per-host |
ホストあたりの最大アイドルコネクション数です。 |
2 |
0.idle-conn-timeout |
アイドルコネクションのタイムアウトです |
10s |
0.meta-tls-config.use-tls |
RedisのTLSを有効化します。 |
false |
0.meta-tls-config.cert-file |
証明書ファイルです。 |
|
0.meta-tls-config.ca-cert-file |
CAの証明書ファイルです。 |
|
0.meta-tls-config.key-file |
キーファイルです。 |
|
0.meta-tls-config.insecure-skip-verify |
検証をスキップします。 |
false |
[influxv2shards]
[influxv2shards.0]
# Redisのアドレスです。
meta-address = '127.0.0.1:6379'
# Redisのパスワードです。
meta-password = ''
# Redisの最大アイドルコネクション数です。
meta-max-idle-conns = 2
# Redisのアイドルコネクションのタイムアウトです。
meta-idle-timeout = '10s'
# InfluxDBへの接続タイムアウト(秒)です。
timeout = '8760h0m0s'
# 最大アイドルコネクション数です。
max-idle-conns = 2
# ホストあたりの最大アイドルコネクション数です。
max-idle-conns-per-host = 2
# アイドルコネクションのタイムアウトです
idle-conn-timeout = '10s'
[influxv2shards.0.meta-tls-config]
# RedisのTLSを有効化します。
use-tls = false
# 証明書ファイルです。
cert-file = ''
# CAの証明書ファイルです。
ca-cert-file = ''
# キーファイルです。
key-file = ''
# 検証をスキップします。
insecure-skip-verify = false
3.2.3.2.15. upload
Property |
Description |
Default |
---|---|---|
storage-driver |
一時ファイル保存先に使用するストレージドライバーです。 local または s3 を指定します。 |
local |
mp4.enable |
Experimental MP4ファイルのアップロードを有効にします。 |
false |
mp4.ffmpeg |
ffmpegのパスです。 |
ffmpeg |
mp4.ffprobe |
ffprobeのパスです。 |
ffprobe |
s3-storage.bucket-name |
S3のバケット名です。 |
intdash-measurement-service |
s3-storage.region |
AWSのリージョンです。 |
ap-northeast-1 |
s3-storage.access-key |
AWSのアクセスキーです。 |
|
s3-storage.secret-access-key |
AWSのシークレットアクセスキーです。 |
|
s3-storage.force-path-style |
オブジェクトの指定にpath-styleのURLを使用します。 |
true |
s3-storage.endpoint |
オブジェクトストレージのエンドポイントです。minioなど、AWS S3以外のストレージを使用する場合に指定します。 |
|
local-storage.directory |
計測アップロードの一時保存ディレクトリです。 |
./data/meas_upload |
local-storage.remove-interval |
計測アップロードの一時保存ディレクトリの削除間隔です。 |
168h0m0s |
[upload]
# 一時ファイル保存先に使用するストレージドライバーです。 `local` または `s3` を指定します。
storage-driver = 'local'
[upload.mp4]
# **Experimental** MP4ファイルのアップロードを有効にします。
enable = false
# ffmpegのパスです。
ffmpeg = 'ffmpeg'
# ffprobeのパスです。
ffprobe = 'ffprobe'
[upload.s3-storage]
# S3のバケット名です。
bucket-name = 'intdash-measurement-service'
# AWSのリージョンです。
region = 'ap-northeast-1'
# AWSのアクセスキーです。
access-key = ''
# AWSのシークレットアクセスキーです。
secret-access-key = ''
# オブジェクトの指定にpath-styleのURLを使用します。
force-path-style = true
# オブジェクトストレージのエンドポイントです。minioなど、AWS S3以外のストレージを使用する場合に指定します。
endpoint = ''
[upload.local-storage]
# 計測アップロードの一時保存ディレクトリです。
directory = './data/meas_upload'
# 計測アップロードの一時保存ディレクトリの削除間隔です。
remove-interval = '168h0m0s'
3.2.3.2.16. gops
Property |
Description |
Default |
---|---|---|
enable |
gopsによるプロファイリングを有効にします。 |
false |
address |
gopsのプロファイリングのアドレスを指定します。 |
127.0.0.1:0 |
[gops]
# gopsによるプロファイリングを有効にします。
enable = false
# gopsのプロファイリングのアドレスを指定します。
address = '127.0.0.1:0'
3.2.3.2.17. event-bus
Property |
Description |
Default |
---|---|---|
driver |
イベントバスのドライバーです nats-streaming |
nats-streaming |
publish-interval |
イベントバスへイベントをパブリッシュする間隔です。Go言語のtime.Durationの文字列表現で指定します。 |
10s |
function-timeout |
イベントバスから受け取ったイベント処理のタイムアウトです。タイムアウトした処理は失敗として扱われ、イベント再配信の対象となります。 |
1h |
max-concurrent |
サブスクライバーの同時実行数です。 |
3 |
only-subscribe |
サブスクライブのみ行うイベントバスの設定です。 |
[] |
[event-bus]
# イベントバスのドライバーです `nats-streaming`
driver = 'nats-streaming'
# イベントバスへイベントをパブリッシュする間隔です。Go言語のtime.Durationの文字列表現で指定します。
publish-interval = '10s'
# イベントバスから受け取ったイベント処理のタイムアウトです。
# タイムアウトした処理は失敗として扱われ、イベント再配信の対象となります。
function-timeout = '1h'
# サブスクライバーの同時実行数です。
max-concurrent = 3
# サブスクライブのみ行うイベントバスの設定です。
only-subscribe = []
3.2.3.2.18. trashed-cleaner
Property |
Description |
Default |
---|---|---|
batch-size |
ゴミ箱内の計測を削除する際のバッチサイズです。 |
100 |
interval |
ゴミ箱内の計測を削除するバッチの実行間隔です。 |
5s |
threshold |
ゴミ箱に移動された計測が削除されるまでの時間です。 |
24h |
[trashed-cleaner]
# ゴミ箱内の計測を削除する際のバッチサイズです。
batch-size = 100
# ゴミ箱内の計測を削除するバッチの実行間隔です。
interval = '5s'
# ゴミ箱に移動された計測が削除されるまでの時間です。
threshold = '24h'
3.2.3.2.19. rate-limit
Property |
Description |
Default |
---|---|---|
quota-set-type |
レートリミットの設定を選択します(small、medium、large)。 large が最も多くのトラフィックを許可する設定です。 |
large |
enable |
レートリミットを有効にします。 |
false |
store.driver |
レートリミットの状態をキャッシュする際のドライバーとして inmem または redis のいずれかを指定します。 |
inmem |
store.redis.network |
Redisとの接続方法として tcp または unix (UNIXドメインソケット)を選択します。 |
tcp |
store.redis.address |
Redisのアドレスです。 |
127.0.0.1:6749 |
store.redis.password |
Redisのパスワードです。 |
P@ssw0rd |
store.redis.db |
DB |
0 |
store.inmem.max-keys |
キャッシュ保存時のキーの最大数 |
65535 |
[rate-limit]
# レートリミットの設定を選択します(`small`、`medium`、`large`)。 `large` が最も多くのトラフィックを許可する設定です。
quota-set-type = 'large'
# レートリミットを有効にします。
enable = false
[rate-limit.store]
# レートリミットの状態をキャッシュする際のドライバーとして `inmem` または `redis` のいずれかを指定します。
driver = 'inmem'
[rate-limit.store.redis]
# Redisとの接続方法として `tcp` または `unix` (UNIXドメインソケット)を選択します。
network = 'tcp'
# Redisのアドレスです。
address = '127.0.0.1:6749'
# Redisのパスワードです。
password = 'P@ssw0rd'
# DB
db = 0
# inmemを使用する場合の設定
[rate-limit.store.inmem]
# キャッシュ保存時のキーの最大数
max-keys = 65535
3.2.3.2.20. jaeger
Property |
Description |
Default |
---|---|---|
enable |
Jaegerによるトレーシングを有効にします |
false |
service-name |
Jaegerによるトレーシング時に使用するサービス名です。 |
measurement |
endpoint |
Jaegerの登録用エンドポイントです。 |
http://localhost:14268/api/traces |
[jaeger]
# Jaegerによるトレーシングを有効にします
enable = false
# Jaegerによるトレーシング時に使用するサービス名です。
service-name = 'measurement'
# Jaegerの登録用エンドポイントです。
endpoint = 'http://localhost:14268/api/traces'
3.2.3.2.21. compatibility
Property |
Description |
Default |
---|---|---|
convert-v2-to-v1-persist-data-points |
互換用に、iSCP v2形式のデータをiSCP v1形式に変換します。 |
true |
[compatibility]
# 互換用に、iSCP v2形式のデータをiSCP v1形式に変換します。
convert-v2-to-v1-persist-data-points = true
3.2.3.2.22. health
Property |
Description |
Default |
---|---|---|
enable |
ヘルスチェックサービスを有効にします。 |
true |
bind-address |
指定したホストとポートでヘルスチェックサーバーをリスンします。 |
0.0.0.0:9080 |
base-path |
ヘルスチェックのベースとなるパスを指定します。 |
[health]
# ヘルスチェックサービスを有効にします。
enable = true
# 指定したホストとポートでヘルスチェックサーバーをリスンします。
bind-address = '0.0.0.0:9080'
# ヘルスチェックのベースとなるパスを指定します。
base-path = ''
3.2.3.3. データ型の指定方法
data-point-write-dbs
でのデータ型の指定方法を示します。
データ型は、データ型を表す整数(0 から 255)と、-
と ,
を使って表します。
data-typesの設 定例(文字列) |
指定されたデータ型 |
説明 |
---|---|---|
'1,3,5' |
[1,3,5] |
カンマ区切り |
'1-3' |
[1,2,3] |
「-」を使用した from-to 式 |
'3-1' |
[1,2,3] |
逆順 |
'-3' |
[0,1,2,3] |
fromの省略 |
'253-' |
[253,254,255] |
toの省略 |
'-' |
[0..255] |
from と to の省略
( |
'1-3,2-4' |
[1,2,3,4] |
重複は無視されます。 |
'1-3,6 -8,10,13,253-' |
[1,2,3,6,7 ,8,10,13,253,254,255] |
上述の指定方法の組み合わせ |
'1 - 3' |
[1,2,3] |
スペースは無視されます。 |
' 1 , 3 , 4 ' |
[1,3,4] |
スペースは無視されます。 |
'aaa' |
- |
不適切な表現です。 |
',' |
- |
不適切な表現です。 |
'256' |
- |
不適切な表現です。 |
'1-256' |
- |
不適切な表現です。 |