Aller au contenu

Format Des Logs Du Nouveau Syslog Server


kerozen

Messages recommandés

Bonjour à tous.

Je viens de mettre à jour un syno 1511+ vers DSM 3.2.

Ravi d'apprendre que le serveur Syslog est disponible en package, je l'installe de suite.

Depuis, le format des logs ne me convient plus.

En effet, j'ai un netasq qui envoyait ses traces vers ce syno qui avait Syslog-ng installé, puis je récupérais ces logs avec Firewall Analyzer 7.

Tout ceci me permettais d'avoir les statistiques de l'utilisation web de mes netasq.

Mais depuis l’installation de ce Syslog Server, Firewall Analyzer ne sait plus récupérer les logs. via ftp, il voit bien le fichier de log ".SYNOSYSLOGDB" et tente de le récupérer, mais il ne réussit pas à le parser.

est-ce que quelqu’un aurait une idée de comment formater correctement ce fichier ou bien remplacer ce syslog server par syslog ng ?

merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Le fichier .SYNOSYSLOGDB est une base de données SQLite3, ce n'est pas un simple fichier de log en clair.

Tu peux éventuellement paramétrer une nouvelle destination dans /usr/local/synosyslog/etc/template/system.conf à partir des templates présentes dans ce même répertoire.

Lien vers le commentaire
Partager sur d’autres sites

Merci à tous...

je viens en effet de désinstaller syslog server et essayer de paramétrer syslog-ng que j'avais avant, mais les choses ont bien changés.

en effet, le fichier de conf ne se rempli plus de la même manière.

je vais donc essayer de comprendre le nouveau format et voir avec les template.

merci.

edit:

bon, je viens de modifier /usr/local/synosyslog/etc/template/system.conf avec le contenu de src_net_udp.template:


@version:3.2.4

################################

# define options for syslog-ng #

################################

options { keep_hostname(yes); };

################################

# define source for system log #

################################

source s_system_local { unix-stream("/var/run/log"); };

source s_syno_net { udp(ip("0.0.0.0") port(1514)); };

#############################################

# define default destination for system log #

#############################################

destination d_system_file { file("/var/log/messages"); };

destination d_syno_file { file("/volume1/logs/SYNOLYON_$DAY.$MONTH.$YEAR.log"); };

include "/usr/syno/etc/synosyslog/syslog.d/";

mais je ne suis pas sur du format de mon deuxième "destination". quoi qu'il en soit, aucun log ne vient du netasq (j'ai bien sûr reconfiguré le netasq pour envoyer ses traces vers le port 1514) edit: je viens d'essayer autre chose: il semble que le fichier /usr/syno/etc/synosyslog/syslog.d/syno.conf controle tout. j'ai donc modifié comme suit:

source s_syno_net { udp(ip("0.0.0.0") port(514)); };

source s_netasq_net { udp(ip("0.0.0.0") port(1514)); };

filter f_syno_internal { level(emerg,alert,crit,err); };

filter f_syno_nonemptymsg { "$MSGONLY" != "" };

filter f_syno_mail { level(emerg); };

destination d_syno_db { sql(type(sqlite3) database("/volume1/logs/.SYNOSYSLOGDB") table("logs") columns("id integer primary key", "host text default NULL", "ip text defaults NULL", "fac text default NULL", "prio text default NULL", "llevel text default NULL", "tag text default NULL", "utcsec int default NULL", "tzoffset text default NULL", "ldate date default CURRENT_DATE", "ltime time default CURRENT_TIME", "prog text default NULL", "msg test defult NULL") values("@@NULL@@", "$HOST", "$SOURCEIP", "$FACILITY", "$PRIORITY", "$LEVEL", "$TAG", "$UNIXTIME", "$TZOFFSET", "$YEAR-$MONTH-$DAY", "$HOUR:$MIN:$SEC", "$PROGRAM", "$MSGONLY") indexes("id", "host", "utcsec", "llevel", "ldate", "ltime") null("@@NULL@@")); };

destination d_syno_mail { pipe("/tmp/syslogmail.fifo"

                       			template("Host: '$HOST', IP: '$SOURCEIP', Level: '$LEVEL', Date: '$YEAR-$MONTH-$DAY', Time: '$HOUR:$MIN:$SEC', Program: '$PROGRAM', Message: '$MSGONLY'\n")

                       			template-escape(yes)

           			);

};

destination d_netasq_file {

   file("/volume1/logs/SYNOLYON_$DAY.$MONTH.$YEAR.log"

   owner(root) group(root) create_dirs(yes));

};

log { source(s_syno_net); filter(f_syno_nonemptymsg); destination(d_syno_db); flags(flow_control); };

log { source(s_system_local); filter(f_syno_internal); destination(d_system_file); flags(flow_control); };

log { source(s_syno_net); filter(f_syno_nonemptymsg); filter(f_syno_mail); destination(d_syno_mail); flags(flow_control); };

log { source(s_netasq_net); destination(d_netasq_file); flags(flow_control); };

et pas mieux. edit: bon bin c'est bien plus compliqué tout ça: tout se modifie depuis le répertoire du package donc: /volume1/@appstore/SyslogServer on y trouve un répertoire script qui contient..des scripts, qui vont lire les fichiers template et vont écrire les fichiers de configuration du serveur syslog-ng à chaque démarrage de ce dernier. Ainsi, il me faut modifier les fichiers template en conséquence, mais aussi les scripts .sh. bon, je crois y etre arrivé: en fait, j'ai modifié /volume1/@appstore/SyslogServer/etc/template/system.conf:

@version:3.2.4

################################

# define options for syslog-ng #

################################

options { keep_hostname(yes); };

################################

# define source for system log #

################################

source s_system_local { unix-stream("/var/run/log"); };

source s_netasq_net { udp(ip("0.0.0.0") port(1514)); };

#############################################

# define default destination for system log #

#############################################

destination d_system_file { file("/var/log/messages"); };

destination d_netasq_file {

   file("/volume1/logs/SYNOLYON_$DAY.$MONTH.$YEAR.log"

   owner(root) group(root) create_dirs(yes));

};


log { source(s_netasq_net); destination(d_netasq_file); flags(flow_control); };

include "/usr/syno/etc/synosyslog/syslog.d/";

puis ... bin c'est tout. et ce coup çi, tout a fonctionné.

comprend pas...

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.