Skip to content

Configuration file

This is the default mfsysmon configuration file.

###################
##### STARTUP #####
###################
[startup]

# If flag=0, block the start of the module
flag=1


#######################
##### AUTORESTART #####
#######################
[autorestart]

# If flag=1, then the autorestart feature is on
flag=1


################
##### MISC #####
################
[misc]

# Max coredumps size (value for `ulimit -c`;
# if core_size=-1, `ulimit -c` is not set)
core_size=0

# tmp sub-directory (${MFMODULE_RUNTIME_HOME}/tmp) cleaning
# 0 => no automatic cleaning
# x => clean files/directories older than x days
tmp_max_age=2


###############
##### LOG #####
###############
[log]

# Log minimal level
#  DEBUG => everything,
#  INFO => everything but not DEBUG,
#  WARNING => everything but not DEBUG and INFO,
#  ERROR => everything but not DEBUG, INFO and WARNING,
#  CRITICAL => everything but not DEBUG, INFO, WARNING AND ERROR
minimal_level=INFO

# Duplicate some log messages in JSON to a specific file (for external
# monitoring tool)
# If json_file value is :
# null => the feature is desactivated
# AUTO => the json_file is @@@MFMODULE_RUNTIME_HOME@@@/log/json_logs.log
#         if [admin]/hostname != null else null (desactivated)
json_file=null

# Minimal level for this json log file
#  DEBUG => everything,
#  INFO => everything but not DEBUG,
#  WARNING => everything but not DEBUG and INFO,
#  ERROR => everything but not DEBUG, INFO and WARNING,
#  CRITICAL => everything but not DEBUG, INFO, WARNING AND ERROR
# Note: you can't send more messages to json log file than the configured global
#       minimal_level level (so also change the value of minimal_level key in
#       these uncommon use-cases)
json_minimal_level=WARNING

# Send some log files to mfadmin
# null => the feature is desactivated
# AUTO => the feature is activated if [admin]/hostname != null
mfadmin_flag=AUTO

# Minimal level for mfadmin send
#  DEBUG => everything,
#  INFO => everything but not DEBUG,
#  WARNING => everything but not DEBUG and INFO,
#  ERROR => everything but not DEBUG, INFO and WARNING,
#  CRITICAL => everything but not DEBUG, INFO, WARNING AND ERROR
# Note: you can't send more messages to mfadmin than the configured global
#       minimal_level level (so also change the value of minimal_level key in
#       these uncommon use-cases)
mfadmin_minimal_level=WARNING

# Maximum number of rotated files to keep
number_of_rotated_files=5

# Max age of a log file before rotation (in seconds)
# Default: 86400 (24H)
max_age_before_rotation=86400

# Max size of a log file before rotation (in bytes)
# Default: 104857600 (100 MB)
max_size_before_rotation=104857600

# chmod on log files
# Default : 0644
chmod=0644

# Try to split stdout/stderr in distinct log files (when it's possible)
# (1 => split, 0 => don't split)
try_to_split_stdout_stderr=0

# Try to split multiple workers in distinct log files (when it's possible)
# (1 => split, 0 => don't split)
try_to_split_multiple_workers=0


####################################
##### JSONSYSLOG2ELASTICSEARCH #####
####################################
[jsonsyslog2elasticsearch]


# UDP port used by jsonsyslog2elasticsearch syslog server (for mflog logs)
mflog_port = 5147


########################
##### ADMIN MODULE #####
########################
[admin]

# Hostname hosting the mfadmin module (if any)
# null => no monitoring
# localhost => send logs and metrics to the locally installed mfadmin module
# * => send logs and metrics to the specified host (which must host an mfadmin
#      module)

hostname=localhost


# Influxdb HTTP port on mfadmin host
# (change this only if you changed influxdb http port on mfadmin host)
influxdb_http_port=18086

# ElasticSearch HTTP port on mfadmin host
# (change this only if you changed elasticsearch http port on mfadmin host)
elasticsearch_http_port=15603



# If send_mflog_logs=1, send mflog logs to the configured admin hostname
send_mflog_logs=1


####################
##### TELEGRAF #####
####################
[telegraf]

# If debug=1, all metrics are (also) dumped into telegraf.log file
debug=0

# UDP port to listen for statsd protocol
# see https://github.com/influxdata/telegraf/tree/master/plugins/inputs/statsd
statsd_port=18129

# If you want to use mfsysmon telegraf as a collector for external
# (ie. non-metwork) metrics, you can use this to listen to a particular port
# in TCP or UDP
# null => no specific listening
# tcp4://:8094 => listen to TCP port 8094
# udp4://:8094 => listen to UDP port 8094
# see https://github.com/influxdata/telegraf/tree/master/plugins/inputs/socket_listener
# for details
external_service_address=null

# If you want to use mfsysmon telegraf as a collector for external
# (ie. non-metwork) metrics, you can use this to execute some custom commands
# to collect external things
# see https://github.com/influxdata/telegraf/tree/master/plugins/inputs/exec
# (the data_format is set to influx, the timeout is set to 10s and the name_suffix
# is set to _custom)
# you can provide a coma separated list of commands full paths
# (null => no external commands)
# (example: /usr/local/bin/mycollector1 --foo=bar,/usr/local/bin/mycollector2)
external_commands=null


##################
##### CIRCUS #####
##################
[circus]

# You probably don't want to change anything in this section
endpoint=ipc://{{MFMODULE_RUNTIME_HOME}}/var/circus.socket
pubsub_endpoint=ipc://{{MFMODULE_RUNTIME_HOME}}/var/circus_pubsub.socket