centreon / centreon-broker

A full-featured monitoring event broker, compatible with MySQL, RRDtool, Graphite and more
Apache License 2.0
37 stars 15 forks source link

Statistics : blocking pipe timeout #96

Open cmoi42 opened 7 years ago

cmoi42 commented 7 years ago

Installation : CES 3.4.1

Arch : Distributed with exported database (cluster pacemaker), central serveur (cluster pacemaker) and 2 remote Pollers

Additional informations : All are physical servers

Hi,

I have setting up statistics for my pollers but one of them having blocking pipe behaviour. Although the timeout value is set in the centcore options, statistics generation never ends and the number of "stuck stats generation process" is growing up with time on the poller. The SSH sessions on central are correctly killed.

Stats are working well on the other poller because of low hosts and services :

I know my pollers are not fairly balance but this is a localization constraint (remote site).

Is this a known bug? Any tunning suggestion or workaround?

Thanks in advance,

Regards


Bonjour,

J'ai mis en place les statistiques pour mes pollers mais l'un d'entre eux ne fonctionne pas correctement. En effet, celui-ci souffre des blocking pipe lors de la génération des stats alors que l'option de timeout sur les process centcore est correctement paramétrée. Les sessions SSH sont correctement tuées sur le serveur central mais les process de génération de stats demeurent et se cumulent avec le temps sur le poller incriminé.

Les statistiques fonctionnent correctement sur l'autre poller, ce qui peut s'expliquer par la faible quantité d’hôtes et de services surveillés :

Je sais que les hôtes ne sont pas répartis correctement mais c'est pour des raisons de localisation (site distant).

Est-ce un bug connu? Avez-vous des suggestions d'optimisation ou solution de contournement?

En vous remerciant,

Cordialement.

jben94 commented 7 years ago

Bonjour @cmoi42,

J'avais déjà eu le même problème, https://github.com/centreon/centreon/issues/4153

Tu peux ajouter la commande "timeout" dans le fichier centcore.pm :

my $timeout = 5;
if ($self->{cmd_timeout} > 0) {
     $timeout = $self->{cmd_timeout};
}
$cmd = "$self->{ssh} -q $server_info->{ns_ip_address} -p $port 'timeout --signal=9 ".$timeout." cat \"".$statistics_file."\" > $statPipe'";
ganoze commented 6 years ago

@cmoi42 ce problème est-il toujours d'actualité ? Le seul problème connu actuellement qui pourrait expliquer que les statistiques ne répondent pas est indiqué dans le ticket #166 .

Hellnino18 commented 5 years ago

Salut @ganoze ,

Pour ma part j'ai ce problème assez régulièrement. Le fichier sur plusieurs de mes pollers disparaît, et on retrouve ce message de logs dans /var/log/centreon-broker/poller-module.log :

[1551332445] error: stats: FIFO thread will exit due to the following error: FIFO fd has pending error

Un restart de centengine et ça repart, mais c'est un peu ennuyeux d'avoir à le faire. Je remarque que cela arrive sur mes satellites qui ont le plus de services (environ 15000 pour les plus gros).

Version de Centreon : 2.8.24 Version de Broker : 3.0.13 Version de Engine : centreon-engine-1.8.1-1.el7.centos.x86_64

Je suis en architecture distribuée.

Merci par avance.