Maison > développement back-end > Golang > Impossible d'obtenir le fichier de configuration toml pour charger les informations dans le plugin d'entrée Telegraf

Impossible d'obtenir le fichier de configuration toml pour charger les informations dans le plugin d'entrée Telegraf

WBOY
Libérer: 2024-02-08 21:10:19
avant
1151 Les gens l'ont consulté

无法获取配置 toml 文件以将信息加载到 telegraf 输入插件

L'éditeur PHP Xiaoxin vous présentera aujourd'hui comment résoudre le problème de l'impossibilité d'obtenir le fichier de configuration toml pour charger les informations dans le plug-in d'entrée Telegraf. Lors de l'utilisation de Telegraf pour la collecte de données, il arrive parfois que le fichier de configuration ne puisse pas être lu, ce qui entraîne l'impossibilité de charger correctement les informations. Ce problème peut être dû à des chemins de fichiers incorrects, à des problèmes d'autorisation ou à des erreurs de format de fichier de configuration. Ci-dessous, nous allons résoudre ce problème étape par étape pour garantir que le plug-in d'entrée Telegraf peut charger normalement les informations dans le fichier de configuration.

Contenu de la question


J'ai créé un plugin d'entrée qui a deux paramètres tirés d'un fichier de configuration comme spécifié dans la structure. Pour une raison inconnue, le plugin refuse de s'exécuter :

Structure :

type plugin struct {
    address       string `toml:"address"`
    lines_to_read string `toml:"lines_to_read"`
}
Copier après la connexion

Voici la section du plugin d'entrée du fichier de configuration toml plugin.conf :

[[inputs.plugin]]
  address = "the/filepath.txt"
  lines_to_read = "20"
Copier après la connexion

Chaque fois que je modifie un fichier go, j'exécute make sur le fichier, puis j'exécute ce qui suit :

./telegraf -config plugin.conf -test
Copier après la connexion

J'obtiens cette erreur :

E! error loading config file plugin.conf: plugin inputs.plugin: line 1156: configuration specified the fields ["lines_to_read"], but they weren't used
Copier après la connexion

Le chargement de l'adresse ne pose aucun problème, mais la valeur "lines_to_read" continue de générer cette erreur. Sais tu ce qu'il s'est passé?

J'ai essayé de supprimer "lines_to_read", cela a bien fonctionné. Essayez de supprimer le trait de soulignement. Gardez la monnaie, s'il vous plaît. Essayez d'exécuter à nouveau make et recherchez les erreurs. Faites-le bien fonctionner.


Solution


telegraf 使用包 github.com/influxdata/toml pour désorganiser les données toml. Ce package nécessite que les champs de structure pour le mappage soient exportés (voir //m.sbmmt.com/link/520bae6649b42ff5a3c8c58b7fcfc5a9).

Essayez d'exporter le champ en le changeant de

 : lines_to_read 重命名为 linestoread

type Plugin struct {
     Address       string `toml:"address"`
-    lines_to_read string `toml:"lines_to_read"`
+    LinesToRead   string `toml:"lines_to_read"`
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal