Aller au contenu

Module config

Le module config permet d'interagir avec la configuration de l'agent.

Pour l'importer il faut utiliser la déclaration suivante :

local config = require("config")

Configuration

Ce module ne nécessite pas de configuration spécifique dans le fichier de configuration de l'agent Alemca. Il est automatiquement chargé lors du démarrage de l'agent.

Fonctions Lua

config.all()

Retourne la configuration complète de l'agent Alemca.

  • Retour :
  • Un tableau Lua contenant la configuration de l'agent.
  • nil et un message d'erreur en cas d'échec.
local config = require("config")

-- fetch the whole config as a Lua table
local all, err = config.all()
assert(not err, err)
printInfo(all.global.ident)

config.get(path)

Retourne la valeur de la configuration à un chemin spécifique. Le chemin doit être au format section.key (ex. global.client_root).

  • Paramètres :
  • path : Le chemin de la configuration à récupérer.

  • Retour :

  • La valeur de la configuration à l'emplacement spécifié.
  • nil et un message d'erreur en cas d'échec.
local config = require("config")

local client_root, err = config.get("global.client_root")
assert(not err, err)
printInfo(client_root)

config.prefix(prefix)

Retourne la valeur de la configuration à un chemin spécifique. Le chemin doit être au format global ou iot.

Le préfixe est utilisé pour filtrer les clés de la configuration.

  • Paramètres :
  • prefix : Le préfixe de la configuration à récupérer.
  • Retour :
  • Un tableau Lua contenant la configuration filtrée par le préfixe.
  • nil et un message d'erreur en cas d'échec.
local config = require("config")

function printRecursive(t, indent)
    for k, v in pairs(t) do
        if type(v) == "table" then
            printInfo(string.format("%s%s:", indent, k))
            printRecursive(v, indent .. "  ")
        else
            printInfo(string.format("%s%s: %s", indent, k, v))
        end
    end
end

local iot, err = config.prefix("iot")
assert(not err, err)
printRecursive(iot, "  ")

Champs Lua associés

  • config.name : Retourne le nom de l'instance config.
  • config.type : Retourne le type du module (ici, config).