Vigie configuration¶
The entire Vigie config is a toml file.
Vigie Config File example
Download an example of vigieconf.toml
This config file is mandatory to launch Vigie. You can specify a path to this config file with :
vigie run --config ./config/vigieconf_example.toml
Configuration file structure¶
Host¶
Information about the host.\ This will help you to indentified this Vigie
[host]
# Information about the host.
# This will help you to indentified this Vigie
# Vigie Name
# Default : Resolve hostname
# Format : string
name = ""
# Vigie URL
# Needed to add alert link to this Vigie
# Default : Resolve hostname
# Format : Complete URL eg (https://fqdn)
url = ""
# Host Tags
# List of key value descriptor for this Vigie
# Default : Empty
# Format : string = "string
[host.tags]
# key1 = "val1"
Import¶
The import section contains all the import parameters of the tests.
[import]
# Reloads the tests at a given frequency
# Default : "" No reload
# Format : duration string (1h,1d,...)
frequency = "5h"
Git¶
Cannot pull from private repo yet (WIP).
You can import your testfiles from a git repo.
[import.git]
# Import Tests and Variables from a Git Repo
# Vigie will clone this repo, then import it as usual
# by adding the destination in [testfiles].included
# Git clone is without the repo parent name folder
# Enable the clone
# Default : false
# Format : bool
clone = true
# Pick a branch
# Default : "" || "master"
# Format : string
branch = "master"
# Repo link
# Default : ""
# Format : "https://domain.tld/repo"
repo = "https://github.com/Vincoll/vigie-demo-test"
# Destination path of the cloned repo
# Default : "/tmp/vigie"
# Format : "string"
path = "/tmp/vigie"
TestFiles¶
List of directories or test files that will be imported into Vigie.\ In case of directory, the file search is done in depth.
Git and Tests Path
Test from the Git repo will be cloned before the import, the destination directory of the clone must be added in included
.
[import.testfiles]
# Paths List of testfiles
# Searching for files is done in depth.
# Dir path and file path are both valid
# Default : [""]
# Format ["string", "string", ...]
included = ["/tmp/vigie/test/"]
# Paths or files to exclude (can be contained in included path)
# Default : [""]
# Format ["string", "string", ...]
excluded = [""]
Variables¶
[import.variables]
# Paths List of variables files
# Searching for files is done in depth.
# Dir path and file path are both valid
# Default : [""]
# Format ["string", "string", ...]
included = ["/tmp/vigie/var/"]
Log¶
[log]
# Activate the log through stdout
# Default : true
# Format : bool
stdout = true
# Log into a file
# Default : false
# Format : bool
logfile = false
# Log level
# Default : info
# Valid values : "info","warn","error",debug,"trace"
level = "info"
# File to write logs into
# Default : ""
# Format : string
filePath = "/tmp/vigie.log"
Valid values for log.level
: info
, warn
, error
, debug
, trace
API¶
[api]
# Activate the API
# Default : true
# Format : bool
enable = true
# API exposed port
# Default : 80
# Format : int
port = 6680
InfluxDB¶
[influxdb]
# Activate the write to influxDB
# Default : false
# Format : bool
enable = false
# Address of influxDB
# Default : ""
# Format : "http://fqdn:port"
addr = "http://influxdb:8086"
# InfluxDB user
# Default : ""
# Format : string
user = "user"
# InfluxDB user password
# Default : ""
# Format : string
password = "user"
# InfluxDB database
# Default : ""
# Format : string
database = "vigie"
Alerting¶
[alerting]
# Activate the built-in alerting of Vigie
# Default : false
# Format : bool
enable = true
# Interval at wich new errors are evaluted and trigger a notification (if any changes)
# Default : "10s"
# Format : duration string from rfc3339
interval = "3s"
# Reminder is an interval that necessarily triggers a notification describing the current state of the X Vigie state.
# (Endorse also the function of DeadMenSwitch)
# Default : "4h"
# Format : duration string from rfc3339
reminder = "4h"
[alerting.email]
# Recipient ot the alert
# Default : ""
# Format : "name@domain.tld"
to = ""
# Emitter of the alert
# Default : ""
# Format: "name@domain.tld"
from = ""
# SMTP username
# Default : ""
# Format: "string"
username = ""
# SMTP password
# Default : ""
# Format: "string"
password = ""
# SMTP fqdn
# Default : ""
# Format: "string"
smtp = ""
# SMTP port
# Default : 0
# Format: int
port = 25
[alerting.discord]
# Discord webhook
# Default : ""
# Format: "https://discordapp.com/api/webhooks/000000000000000/aaaaaazzzzzzz"
webhook = ""
[alerting.slack]
# Slack webhook
# Default : ""
# Format: "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
webhook = ""
# Slack channel (optional) Overload the channel defined when creating the webhook.
# Default : ""
# Format: string
channel = ""