配置
eKuiper 的配置文件为 yaml 格式,位于 $ eKuiper / etc / kuiper.yaml 中。
basic:
# true|false, with debug level, it prints more debug info
debug: false
# true|false, if it's set to true, then the log will be print to console
consoleLog: false
# true|false, if it's set to true, then the log will be print to log file
fileLog: true
# How many hours to split the file
rotateTime: 24
# Maximum file storage hours
maxAge: 72
# CLI ip
ip: 0.0.0.0
# CLI port
port: 20498
# REST service ip
restIp: 0.0.0.0
# REST service port
restPort: 9081
# restTls:
# certfile: /var/https-server.crt
# keyfile: /var/https-server.key
# Prometheus settings
prometheus: false
prometheusPort: 20499
# The URL where hosts all of pre-build plugins. By default it's at packages.emqx.io
# There could be several hosts (host can be separated with comma), if same package could be found in the several hosts,
# then the package in the 1st host will have the highest priority.
pluginHosts: https://packages.emqx.net
# The default options for all rules. Each rule can override this setting by defining its own option
rule:
# The qos of the rule. The values can be 0: At most once; 1: At least once; 2: Exactly once
# If qos is bigger than 0, the checkpoint mechanism will launch to save states so that they can be
# restored for unintended interrupt or planned restart of the rule. The performance may be affected
# to enable the checkpoint mechanism
qos: 0
# The interval in millisecond to run the checkpoint mechanism.
checkpointInterval: 300000
# Whether to send errors to sinks
sendError: true
sink:
# The cache persistence threshold size. If the message in sink cache is larger than 10, then it triggers persistence. If you find
# the remote system is slow to response, or sink throughput is small, then it's recommend to increase below 2 configurations.
# More memory is required with the increase of below 2 configurations.
# If the message count reaches below value, then it triggers persistence.
cacheThreshold: 10
# The message persistence is triggered by a ticker, and cacheTriggerCount is for using configure the count to trigger the persistence procedure
# regardless if the message number reaches cacheThreshold or not. This is to prevent the data won't be saved as the cache never pass the threshold.
cacheTriggerCount: 15
# Control to disable cache or not. If it's set to true, then the cache will be disabled, otherwise, it will be enabled.
disableCache: true
系统日志:用户将名为 KuiperSyslogKey 的环境变量的值设置为 true 时,日志将打印到系统日志中。
restPort:REST http 服务器监听端口。
restTls:TLS 证书 cert 文件和 key 文件位置。如果 restTls 选项未配置,则 REST 服务器将启动为 http 服务器,否则启动为 https 服务器。
存储
可通过配置修改创建的流和规则等状态的存储方式。默认情况下,程序状态存储在 sqlite 数据库中。把存储类型改成 redis,可使用 redis 作为存储方式。
Sqlite
name - 数据库文件名。若为空,则设置为默认名字sqliteKV.db
Redis
host - redis 服务器地址。
port - redis 服务器端口。
password - redis 服务器密码。若 redis 未配置认证系统,则可不设置密码。
timeout - 连接超时时间。
store:
#Type of store that will be used for keeping state of the application
type: sqlite
redis:
host: localhost
port: 6379
password: kuiper
#Timeout in ms
timeout: 1000
sqlite:
#Sqlite file name, if left empty name of db will be sqliteKV.db
name: