Giter Club home page Giter Club logo

centreon-collect's Introduction

Centreon - IT and Application monitoring software

stable version  License  Centreon bug tracker  Official documentation  Official Slack  Official website  Official Download  Official The Watch  

Centreon Twitter  Centreon Labs Twitter  

Centreon ScreenShot

Introduction

Centreon is one of the most flexible and powerful monitoring softwares on the market; it is absolutely free and Open Source.

Getting Started

Centreon software can be set up

Supported versions

Regarding the Products Lifecycle Policy, only the following versions are supported:

  • Centreon 21.10.x, released on November 2, 2021, full support
  • Centreon 21.04.x, released on April 21, 2021, security and blocking issue support only
  • Centreon 20.10.x, released on October 21, 2020, security support only

If your version is not one of the 3 versions specified above, we recommend that you upgrade your platform immediately.

Authors

Project leaders

   

Product managers

       

Development team

                             

Quality Assurance

       

Documentation

 

See also the list of our contributors

Security Acknowledgement page

We want to thank all reporters and pentesters who help us improve our product each day.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, bug report, feature request and the process for submitting pull requests for us.

License

This project is licensed under the Apache 2.0 License - see the LICENSE.md file for details

centreon-collect's People

Contributors

adr-mo avatar afouille avatar bouda1 avatar centreonpm avatar cgagnaire avatar denlia avatar dependabot[bot] avatar dguillois avatar ganoze avatar jean-christophe81 avatar julienmathis avatar kduret avatar lgcosta avatar maaown avatar mushroomempires avatar omercier avatar paloth avatar pkippes avatar psamecentreon avatar rem31 avatar sc979 avatar sfarouq-ext avatar sims24 avatar sylvestreg avatar tanguyvda avatar thearchit3ct avatar tmpaccount01 avatar tuntoja avatar urbnw avatar zguennoune02 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

centreon-collect's Issues

Predictive Host Dependency Checks - it is working?

Centreon 22.10.x (latest updates)
monitoring different remote hosts with parent/child relation between FW/Gateway and hosts behind. Every host has the same check intervals. When FW/Gateway is down, all Hosts are unreachable, but we have many times the problem that we have notifications for the hosts behind the FW/Gateway.

Predictive Host Dependency Checks is set on YES on the Engine configuration.

Any idea?

Fichiers de retention RRD à l'utilisation des agents Crowdtrike.

Bonjour,

Nous avons constaté depuis l'installation des agents Crowdstrike par la sécu, une cumulation des fichiers de rétention liées au retard de génération des fichiers RRD.
Nous avons ajouté les processus cbd et les filesystems dans les exclusions de l'agent, mais nous constatons toujours du retard quand nous activons l'agent Crowdstrike.

Auriez vous une idée des process à exclure en plus. pour que l'agent ne limite pas la génération des fichiers RRD ?

D'avance merci pour votre aide

Install on debian 11

I have the following error when I ma on make step :

/usr/local/src/centreon-collect-22.04.0/bbdo/service.pb.h:35:10: fatal error: tag.pb.h: Aucun fichier ou dossier de ce type
35 | #include "tag.pb.h"
| ^~~~~~~~~~
compilation terminated.
make[2]: *** [bbdo/CMakeFiles/pb_service_lib.dir/build.make:89 : bbdo/CMakeFiles/pb_service_lib.dir/service.pb.cc.o] Erreur 1
make[1]: *** [CMakeFiles/Makefile2:1576 : bbdo/CMakeFiles/pb_service_lib.dir/all] Erreur 2
make: *** [Makefile:149 : all] Erreur 2

I have tried to to setup on two vms, debian buster is up to date (11.3)

broker error: services notes could not be save in the centreon_storage DB. (conflict_manager: error in the main loop: could not store service: Data too long for column 'notes' at row 1)

Versions

centreon-auto-discovery-server-21.10.3-2.el7.centos.noarch
centreon-widget-live-top10-cpu-usage-21.10.0-2.el7.centos.noarch
centreon-open-tickets-21.10.1-1.el7.centos.noarch
centreon-perl-libs-21.10.13-2.el7.centos.noarch
centreon-broker-cbmod-21.10.3-3.el7.x86_64
centreon-plugin-Operatingsystems-Windows-Snmp-20221017-094659.el7.centos.noarch
centreon-plugin-Applications-Monitoring-Centreon-Map4-Jmx-20221017-094659.el7.centos.noarch
centreon-21.10.13-2.el7.centos.noarch
centreon-widget-graph-monitoring-21.10.0-2.el7.centos.noarch
centreon-widget-tactical-overview-21.10.0-2.el7.centos.noarch
centreon-common-21.10.13-2.el7.centos.noarch
centreon-trap-21.10.13-2.el7.centos.noarch
centreon-plugin-Applications-Monitoring-Centreon-Database-20221017-094659.el7.centos.noarch
centreon-gorgone-centreon-config-21.10.3-1.el7.centos.noarch
centreon-poller-centreon-engine-21.10.13-2.el7.centos.noarch
centreon-release-21.10-5.el7.centos.noarch
centreon-license-manager-common-21.10.0-1.el7.centos.noarch
centreon-license-manager-21.10.0-1.el7.centos.noarch
centreon-widget-httploader-21.10.0-2.el7.centos.noarch
centreon-clib-21.10.3-3.el7.x86_64
centreon-broker-storage-21.10.3-3.el7.x86_64
centreon-engine-extcommands-21.10.3-3.el7.x86_64
centreon-connector-ssh-21.10.3-3.el7.x86_64
centreon-plugin-Hardware-Ups-Standard-Rfc1628-Snmp-20221017-094659.el7.centos.noarch
centreon-plugin-Applications-Protocol-Dns-20221017-094659.el7.centos.noarch
centreon-widget-service-monitoring-21.10.1-1.el7.centos.noarch
centreon-widget-hostgroup-monitoring-21.10.0-2.el7.centos.noarch
centreon-plugin-Applications-Databases-Mysql-20221017-094659.el7.centos.noarch
centreon-fingerprint-21.04.0-2.el7.centos.x86_64
centreon-plugin-Applications-Protocol-Http-20221017-094659.el7.centos.noarch
centreon-web-21.10.13-2.el7.centos.noarch
centreon-broker-influxdb-21.10.3-3.el7.x86_64
centreon-engine-daemon-21.10.3-3.el7.x86_64
centreon-broker-core-21.10.3-3.el7.x86_64
centreon-engine-21.10.3-3.el7.x86_64
centreon-connector-21.10.3-3.el7.x86_64
centreon-plugins-base-1.18-2.el7.centos.noarch
centreon-plugin-Applications-Monitoring-Centreon-Poller-20221017-094659.el7.centos.noarch
centreon-plugin-Applications-Monitoring-Centreon-Central-20221017-094659.el7.centos.noarch
centreon-plugin-Applications-Protocol-Ldap-20221017-094659.el7.centos.noarch
centreon-pp-manager-21.10.0-2.el7.centos.noarch
centreon-widget-servicegroup-monitoring-21.10.0-2.el7.centos.noarch
centreon-widget-global-health-21.10.1-1.el7.centos.noarch
centreon-widget-grid-map-21.10.0-2.el7.centos.noarch
centreon-awie-21.10.0-1.el7.centos.noarch
centreon-database-21.10.13-2.el7.centos.noarch
centreon-base-config-centreon-engine-21.10.13-2.el7.centos.noarch
centreon-plugin-Virtualization-VMWare-daemon-3.2.5-20220816072422.el7.centos.noarch
centreon-widget-engine-status-21.10.0-2.el7.centos.noarch
centreon-widget-live-top10-memory-usage-21.10.0-2.el7.centos.noarch
centreon-broker-cbd-21.10.3-3.el7.x86_64
centreon-plugin-Network-Cisco-Standard-Snmp-20221017-094659.el7.centos.noarch
centreon-gorgone-21.10.3-1.el7.centos.noarch
centreon-plugin-Hardware-Printers-Generic-Snmp-20221017-094659.el7.centos.noarch
centreon-widget-host-monitoring-21.10.0-2.el7.centos.noarch
centreon-broker-21.10.3-3.el7.x86_64
centreon-connector-perl-21.10.3-3.el7.x86_64
centreon-plugin-Applications-Protocol-Ftp-20221017-094659.el7.centos.noarch
centreon-plugin-Operatingsystems-Linux-Snmp-20221017-094659.el7.centos.noarch
centreon-broker-graphite-21.10.3-3.el7.x86_64


***Operating System***

*CentOS*

Version: 7

### Description

When you insert a very long text in the notes field (> 255) you get an error in the broker log that the service could not be saved. The problem is that in the configuration DB (centreon) the column esi_notes is a text. 

In the storage DB (centreon_storage) is only a varchar 255


### Steps to Reproduce

Please describe precisely the steps to reproduce the encountered issue.

1. On service configuration on the Extended Info Tab enter this text in the "Notes" Field
"This is a very loong text. Copy this text .. This is a very loong text. Copy this text .. This is a very loong text. Copy this text .. This is a very loong text. Copy this text .. This is a very loong text. Copy this text .. This is a very loong text. Copy this text .. This is a very loong text. Copy this text .."
2. Export the configuration
3. Force the check
4. See the error in the centreon broker master log


### Logs

[2022-10-25T16:09:20.245+02:00] [sql] [error] mysql_connection: could not store service:  Data too long for column 'notes' at row 1
[2022-10-25T16:09:21.749+02:00] [sql] [error] conflict_manager: error in the main loop: could not store service:  Data too long for column 'notes' at row 1



Broker stats on Remote Server seems broken for input

Hello,

I have build a Centreon Remote Server with a Poller attached to it. , so i have :
Central -> RS -> Poller

I’m checking the Broker speed with Centreon plugins, who claim there is something wrong :
CRITICAL: Endpoint input 'central-broker-master-input' Speed Events: 0/s

In the Perfdata field :
'speed_events_central-broker-master-input'=0events/s;0.03:;0.01:;0; 'queued_events_central-broker-master-input'=0events;0:22000;0:25000;0; 'speed_events_central-broker-master-perfdata'=0.4events/s;0.03:;0.01:;0; 'queued_events_central-broker-master-perfdata'=2events;0:22000;0:25000;0; 'speed_events_central-broker-master-sql'=0.4events/s;0.03:;0.01:;0; 'queued_events_central-broker-master-sql'=2events;0:22000;0:25000;0; 'speed_events_centreon-broker-master-rrd'=0.4events/s;0.03:;0.01:;0; 'queued_events_centreon-broker-master-rrd'=829events;0:22000;0:25000;0; 'unacknowledged_events_centreon-broker-master-rrd'=0events;;;0; 'speed_events_forward-to-master'=0.2events/s;0.03:;0.01:;0; 'queued_events_forward-to-master'=952events;0:22000;0:25000;0; 'unacknowledged_events_forward-to-master'=0events;;;0;

The content of the JSON :
{"asio_version": "1.18.1", "endpoint central-broker-master-input": {"central-broker-master-input-12": {"bbdo_input_ack_limit": 1000, "bbdo_unacknowledged_events": 579, "event_processing_speed": 0.056603773584905662, "last_connection_attempt": 1644254015, "last_connection_success": 1644254015, "last_event_at": 1644569705, "queue_file_enabled": false, "queued_events": 0, "read_filters": "all", "state": "connected", "unacknowledged_events": 0, "write_filters": ""}, "central-broker-master-input-13": {"bbdo_input_ack_limit": 1000, "bbdo_unacknowledged_events": 986, "event_processing_speed": 0.15151515151515152, "last_connection_attempt": 1644254015, "last_connection_success": 1644254015, "last_event_at": 1644569725, "queue_file_enabled": false, "queued_events": 0, "read_filters": "all", "state": "connected", "unacknowledged_events": 0, "write_filters": ""}, "event_processing_speed": 0, "last_connection_attempt": -1, "last_connection_success": -1, "last_event_at": 1643878667, "memory_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.memory.central-broker-master-input", "name": "central-broker-master-input", "one_peer_retention_mode": false, "peers": "0: ", "queue_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.queue.central-broker-master-input", "queued_events": 0, "read_filters": "all", "state": "listening", "write_filters": ""}, "endpoint central-broker-master-perfdata": {"event_processing_speed": 0.6875, "failover": {}, "last_connection_attempt": 1643878667, "last_connection_success": 1643878667, "last_event_at": 1644569726, "memory_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.memory.central-broker-master-perfdata", "name": "central-broker-master-perfdata", "pending events": 0, "queue_file_enabled": false, "queue_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.queue.central-broker-master-perfdata", "queued_events": 0, "read_filters": "all", "state": "connected", "status": "reading event from multiplexing engine", "unacknowledged_events": 0, "write_filters": "all"}, "endpoint central-broker-master-sql": {"conflict_manager": {"events_handled": 3, "loop timeout": 30, "max pending events": 10000, "max perfdata events": 10000, "speed": "0.2 events/s", "sql": 0, "storage": 0, "waiting_events": 0}, "event_processing_speed": 0.6875, "failover": {}, "last_connection_attempt": 1643878667, "last_connection_success": 1643878667, "last_event_at": 1644569726, "memory_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.memory.central-broker-master-sql", "name": "central-broker-master-sql", "queue_file_enabled": false, "queue_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.queue.central-broker-master-sql", "queued_events": 0, "read_filters": "all", "sql pending events": 0, "state": "connected", "status": "reading event from multiplexing engine", "unacknowledged_events": 0, "write_filters": "all"}, "endpoint centreon-broker-master-rrd": {"bbdo_input_ack_limit": 1000, "bbdo_unacknowledged_events": 0, "event_processing_speed": 0.6875, "failover": {}, "last_connection_attempt": 1643878667, "last_connection_success": 1643878667, "last_event_at": 1644569726, "memory_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.memory.centreon-broker-master-rrd", "name": "centreon-broker-master-rrd", "queue_file_enabled": false, "queue_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.queue.centreon-broker-master-rrd", "queued_events": 543, "read_filters": "all", "state": "connected", "status": "reading event from multiplexing engine", "unacknowledged_events": 543, "write_filters": "all"}, "endpoint forward-to-master": {"bbdo_input_ack_limit": 1000, "bbdo_unacknowledged_events": 0, "event_processing_speed": 0.18181818181818182, "failover": {}, "last_connection_attempt": 1643878667, "last_connection_success": 1643878667, "last_event_at": 1644569725, "memory_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.memory.forward-to-master", "name": "forward-to-master", "queue_file_enabled": false, "queue_file_path": "/var/lib/centreon-broker//centreon-rs-lyon-01-broker.queue.forward-to-master", "queued_events": 200, "read_filters": "all", "state": "connected", "status": "reading event from multiplexing engine", "unacknowledged_events": 200, "write_filters": ", service_group, service, service_dependency, service_check, host, downtime, event_handler, flapping_status, host_check, host_dependency, responsive_instance, custom_variable, instance_configuration, comment, service_status, acknowledgement, service_group_member, custom_variable_status, host_group, host_group_member, host_parent, host_status, instance, instance_status, log_entry, module"}, "module/usr/share/centreon/lib/centreon-broker/10-neb.so": {"name": "/usr/share/centreon/lib/centreon-broker/10-neb.so", "size": "483456B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/15-stats.so": {"name": "/usr/share/centreon/lib/centreon-broker/15-stats.so", "size": "136920B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/20-bam.so": {"name": "/usr/share/centreon/lib/centreon-broker/20-bam.so", "size": "1003048B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/20-storage.so": {"name": "/usr/share/centreon/lib/centreon-broker/20-storage.so", "size": "683560B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/30-correlation.so": {"name": "/usr/share/centreon/lib/centreon-broker/30-correlation.so", "size": "148592B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/50-tcp.so": {"name": "/usr/share/centreon/lib/centreon-broker/50-tcp.so", "size": "435896B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/60-tls.so": {"name": "/usr/share/centreon/lib/centreon-broker/60-tls.so", "size": "90520B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/70-lua.so": {"name": "/usr/share/centreon/lib/centreon-broker/70-lua.so", "size": "450392B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/70-rrd.so": {"name": "/usr/share/centreon/lib/centreon-broker/70-rrd.so", "size": "426552B", "state": "loaded"}, "module/usr/share/centreon/lib/centreon-broker/80-sql.so": {"name": "/usr/share/centreon/lib/centreon-broker/80-sql.so", "size": "65880B", "state": "loaded"}, "mysql manager": {"delay since last check": "0", "waiting tasks in connection 0": "0"}, "now": "1644569728", "pid": 20883, "thread_pool": {"latency": "0.014ms", "size": 2}, "version": "20.10.11"}

It seems that the global "event_processing_speed" is not computed in the same way as the others.

Broker Version on the RS :

  • centreon-broker-storage-20.10.11-1.el7.centos.x86_64
  • centreon-broker-cbd-20.10.11-1.el7.centos.x86_64
  • centreon-broker-core-20.10.11-1.el7.centos.x86_64
  • centreon-broker-20.10.11-1.el7.centos.x86_64
  • centreon-broker-cbmod-20.10.11-1.el7.centos.x86_64

Thanks

hosts and services deleted from UI are not purged in centreon_storage

BUG REPORT INFORMATION

Prerequisites

The opened issue, must be code related. GitHub is not meant for support. Feel free to check the CONTRIBUTING section for more details.

Versions

For the RPM based systems

-- Copy/Paste the result of the following command --

$ rpm -qa | grep centreon-broker
centreon-broker-21.10.3-3.el7.x86_64
centreon-broker-cbd-21.10.3-3.el7.x86_64
centreon-broker-cbmod-21.10.3-3.el7.x86_64
centreon-broker-storage-21.10.3-3.el7.x86_64
centreon-broker-core-21.10.3-3.el7.x86_64
centreon-broker-graphite-21.10.3-3.el7.x86_64

Operating System

*CentOS

How the the component has been installed and versions

  • From sources, from packages
  • components versions

Description

Hi,
We have observed that deleted hosts and services are not purged in Centreon_storage(tables: Hosts, services) after restarting the engine.
we also have some sql error in "central-broker-master.log" indicating that the host_id does not exist.

thanks for the help,

Steps to Reproduce

Please describe precisely the steps to reproduce the encountered issue.

  1. Delete host from UI.
  2. Export and restart Engine
  3. check if the host is still exist in centreon_storage database

Describe the received result

In the database:
MariaDB [centreon_storage]> select host_id,last_check from hosts where host_id =12022\G;
*************************** 1. row ***************************
host_id: 12022
last_check: 1681465277
1 row in set (0.002 sec)

Logs

centreon-broker logs (if needed)

[2023-04-14T16:50:40.310+02:00] [sql] [error] SQL: host with host_id = 12022 does not exist - unable to store service of that host. You should restart centengine
[2023-04-14T16:50:40.310+02:00] [sql] [error] SQL: host with host_id = 12022 does not exist - unable to store service of that host. You should restart centengine
[2023-04-14T16:50:40.310+02:00] [sql] [error] SQL: host with host_id = 12022 does not exist - unable to store service of that host. You should restart centengine
[2023-04-14T16:50:40.310+02:00] [sql] [error] SQL: host with host_id = 12022 does not exist - unable to store service of that host. You should restart centengine

Compilation issue with engine on 22.04 release

Hello,

I'm trying to compile release 22.04 on Ubuntu 22.04 :

mkdir build
cd build
conan install --build=missing ..
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DWITH_TESTING=On -DWITH_MODULE_SIMU=On ..
make -j4

But i ran into an error :

-- Build files have been written to: /usr/local/src/centreon-collect-22.04.1/build
[  1%] Generating interface files of the bbdo file host.proto
[  1%] Generating interface files of the bbdo file service.proto
[  1%] Building CXX object bbdo/CMakeFiles/bbdo_bbdo.dir/cmake_pch.hxx.gch
[  1%] Generating table_max_size.hh
/bin/sh: 1: --cpp_out=/usr/local/src/centreon-collect-22.04.1/bbdo: not found
make[2]: *** [bbdo/CMakeFiles/target_service.dir/build.make:74: ../bbdo/service.pb.cc] Error 127
make[1]: *** [CMakeFiles/Makefile2:1263: bbdo/CMakeFiles/target_service.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/bin/sh: 1: --cpp_out=/usr/local/src/centreon-collect-22.04.1/bbdo: not found
make[2]: *** [bbdo/CMakeFiles/target_host.dir/build.make:74: ../bbdo/host.pb.cc] Error 127
make[1]: *** [CMakeFiles/Makefile2:1289: bbdo/CMakeFiles/target_host.dir/all] Error 2

/usr/local/src/centreon-collect-22.04.1/bbdo exists :

# pwd
/usr/local/src/centreon-collect-22.04.1/bbdo
# ls
bam  bbdo  CMakeLists.txt  events.hh  generate-accessor.py  host.proto  precomp_inc  rebuild_message.proto  remove_graph_message.proto  service.proto  severity.proto  storage  tag.proto

I'm not having much luck with 22.10 release anyway :

In file included from /root/.conan/data/abseil/20220623.0/_/_/package/6557f18ca99c0b6a233f43db00e30efaa525e27e/include/absl/container/flat_hash_map.h:41,
                 from /usr/local/src/centreon-collect-22.10.0/bbdo/precomp_inc/precomp.hpp:54,
                 from /usr/local/src/centreon-collect-22.10.0/build/bbdo/CMakeFiles/bbdo_bbdo.dir/cmake_pch.hxx:5,
                 from <command-line>:
/root/.conan/data/abseil/20220623.0/_/_/package/6557f18ca99c0b6a233f43db00e30efaa525e27e/include/absl/container/internal/hash_function_defaults.h: At global scope:
/root/.conan/data/abseil/20220623.0/_/_/package/6557f18ca99c0b6a233f43db00e30efaa525e27e/include/absl/container/internal/hash_function_defaults.h:106:21: error: ‘string_view’ is not a member of ‘absl’
  106 | struct HashEq<absl::string_view> : StringHashEq {};
      |                     ^~~~~~~~~~~
/root/.conan/data/abseil/20220623.0/_/_/package/6557f18ca99c0b6a233f43db00e30efaa525e27e/include/absl/container/internal/hash_function_defaults.h:106:21: error: ‘string_view’ is not a member of ‘absl’
/root/.conan/data/abseil/20220623.0/_/_/package/6557f18ca99c0b6a233f43db00e30efaa525e27e/include/absl/container/internal/hash_function_defaults.h:106:32: error: template argument 1 is invalid
  106 | struct HashEq<absl::string_view> : StringHashEq {};
      |                                ^
make[2]: *** [bbdo/CMakeFiles/bbdo_bbdo.dir/build.make:77: bbdo/CMakeFiles/bbdo_bbdo.dir/cmake_pch.hxx.gch] Error 1
make[1]: *** [CMakeFiles/Makefile2:1527: bbdo/CMakeFiles/bbdo_bbdo.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

[23.10] Segmentation Fault in cbd Due to Null Pointer Dereference and Invalid Mutex Operation

BUG REPORT INFORMATION

Prerequisites

Versions

centreon-broker-core-23.10.2-1.el9.x86_64
centreon-broker-cbd-23.10.2-1.el9.x86_64
centreon-broker-core-23.10.5-1.el9.x86_64
centreon-broker-cbd-23.10.5-1.el9.x86_64

Operating System

Red Hat Enterprise Linux release 9.3 (Plow)

How the the component has been installed and versions

  • From sources, from packages
  • components versions

Version: --

Additional environment details (AWS, VirtualBox, physical, etc.):

VMware vSphere virtual machine

Description

CBD crashes on reload

# coredumpctl list
TIME                            PID UID GID SIG     COREFILE EXE             SIZE
Mon 2024-03-04 16:31:24 EET   12546 692 692 SIGSEGV present  /usr/sbin/cbd 234.0M
Tue 2024-03-05 10:10:08 EET 3596855 692 692 SIGSEGV present  /usr/sbin/cbd 126.1M
Tue 2024-03-05 12:12:04 EET 3968487 692 692 SIGSEGV present  /usr/sbin/cbd  28.4M
Tue 2024-03-05 15:01:05 EET 4012819 692 692 SIGSEGV present  /usr/sbin/cbd  29.3M
Tue 2024-03-05 15:59:35 EET 4076381 692 692 SIGSEGV present  /usr/sbin/cbd  45.4M
Tue 2024-03-05 16:16:21 EET 4104075 692 692 SIGSEGV present  /usr/sbin/cbd  35.6M
Wed 2024-03-06 11:28:38 EET 4111977 692 692 SIGSEGV present  /usr/sbin/cbd 131.5M

We have encountered a consistent segmentation fault across multiple instances of the cbd process, as evidenced by analysis of various core dumps generated by the application. The fault appears to be triggered during mutex lock operations within the threading and synchronization logic of the application. Below are the key observations from the gdb backtrace analysis of the core dumps:

Crash Context: The segmentation fault occurs at the point of attempting to lock a mutex (pthread_mutex_lock@@GLIBC_2.2.5) within the GNU C Library (libc.so.6).

Invalid Mutex Reference: The mutex operation attempts to lock a mutex at an invalid memory address (this=0x1b8). Such an address is highly indicative of a corrupted, uninitialized, or otherwise invalid mutex object, pointing towards a problem with the management of synchronization primitives in the application.

Null Pointer Dereference: The backtrace reveals that the crash happens during a call to com::centreon::broker::multiplexing::muxer::publish with a this pointer being null (this=this@entry=0x0). This indicates a scenario where the application attempts to access a member function of a class through a null pointer, leading to undefined behavior and, ultimately, a segmentation fault.

Recurring Pattern: The same pattern of crash is observed across different core dumps, suggesting a systematic issue with the application's handling of threading and synchronization, particularly regarding the lifecycle and integrity of muxer objects and associated mutexes.

Thread Safety Concerns: The crashes are related to threading operations, indicating potential issues with the thread safety of operations involving muxer objects or related synchronization mechanisms.

Steps to Reproduce

Export poller configuration from Central

Describe the received result

Some times cbd process crashes on segfault

Describe the expected result

cbd process should not crash on segfault

Logs

gdb backtrace

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/sbin/cbd /etc/centreon-broker/central-broker.json'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f9ec1ca2b14 in pthread_mutex_lock@@GLIBC_2.2.5 () from /lib64/libc.so.6
[Current thread is 1 (Thread 0x7f9ec1bff640 (LWP 4111978))]
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.34-83.el9_3.7.x86_64 gnutls-3.7.6-23.el9_3.3.x86_64 libffi-3.4.2-8.el9.x86_64 libgcc-11.4.1-2.1.el9.x86_64 libidn2-2.3.0-7.el9.x86_64 libstdc++-11.4.1-2.1.el9.x86_64 libtasn1-4.16.0-8.el9_1.x86_64 libunistring-0.9.10-15.el9.x86_64 nettle-3.8-3.el9_0.x86_64 p11-kit-0.24.1-2.el9.x86_64 sssd-client-2.9.1-4.el9_3.5.x86_64
(gdb) bt
#0  0x00007f9ec1ca2b14 in pthread_mutex_lock@@GLIBC_2.2.5 () from /lib64/libc.so.6
#1  0x00000000009a3c54 in __gthread_mutex_lock (__mutex=0x1b8) at /usr/include/c++/11/x86_64-redhat-linux/bits/gthr-default.h:749
#2  std::mutex::lock (this=0x1b8) at /usr/include/c++/11/bits/std_mutex.h:100
#3  std::lock_guard<std::mutex>::lock_guard (__m=..., this=<synthetic pointer>) at /usr/include/c++/11/bits/std_mutex.h:229
#4  com::centreon::broker::multiplexing::muxer::publish (this=this@entry=0x0, event_queue=std::deque with 1 element = {...}) at broker/core/multiplexing/src/muxer.cc:309
#5  0x000000000099bae6 in operator() (__closure=0x7f9ec1bfe9c0) at broker/core/multiplexing/src/engine.cc:404
#6  boost::asio::asio_handler_invoke<com::centreon::broker::multiplexing::engine::_send_to_subscribers(com::centreon::broker::multiplexing::engine::send_to_mux_callback_type&&)::<lambda()> > (function=...)
    at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/handler_invoke_hook.hpp:88
#7  boost_asio_handler_invoke_helpers::invoke<com::centreon::broker::multiplexing::engine::_send_to_subscribers(com::centreon::broker::multiplexing::engine::send_to_mux_callback_type&&)::<lambda()>, com::centreon::broker::multiplexing::engine::_send_to_subscribers(com::centreon::broker::multiplexing::engine::send_to_mux_callback_type&&)::<lambda()> > (context=..., function=...) at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/detail/handler_invoke_helpers.hpp:54
#8  boost::asio::detail::handler_work<com::centreon::broker::multiplexing::engine::_send_to_subscribers(com::centreon::broker::multiplexing::engine::send_to_mux_callback_type&&)::<lambda()>, boost::asio::io_context::basic_executor_type<std::allocator<void>, 0>, void>::complete<com::centreon::broker::multiplexing::engine::_send_to_subscribers(com::centreon::broker::multiplexing::engine::send_to_mux_callback_type&&)::<lambda()> > (handler=..., function=..., this=<synthetic pointer>)
    at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/detail/handler_work.hpp:524
#9  boost::asio::detail::completion_handler<com::centreon::broker::multiplexing::engine::_send_to_subscribers(com::centreon::broker::multiplexing::engine::send_to_mux_callback_type&&)::<lambda()>, boost::asio::io_context::basic_executor_type<std::allocator<void>, 0> >::do_complete(void *, boost::asio::detail::operation *, const boost::system::error_code &, std::size_t) (owner=0x30b5750, base=0x7f9eb1184fe0) at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/detail/completion_handler.hpp:74
#10 0x0000000000815827 in boost::asio::detail::scheduler_operation::complete (bytes_transferred=0, ec=..., owner=0x30b5750, this=0x7f9eb1184fe0)
    at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/detail/scheduler_operation.hpp:40
#11 boost::asio::detail::scheduler::do_run_one (this=0x30b5750, lock=..., this_thread=..., ec=...) at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/detail/impl/scheduler.ipp:493
#12 0x00000000009623a1 in boost::asio::detail::scheduler::run (this=0x30b5750, ec=...) at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/detail/impl/scheduler.ipp:210
#13 0x000000000096646f in boost::asio::io_context::run (this=<optimized out>, this=<optimized out>) at /root/.conan/data/boost/1.82.0/_/_/package/20331109885a8c762c1205ed07e58ba4848e8024/include/boost/asio/impl/io_context.ipp:64
#14 operator() (__closure=0x30b31a8) at broker/core/src/pool.cc:101
#15 std::__invoke_impl<void, com::centreon::broker::pool::pool(const std::shared_ptr<boost::asio::io_context>&, size_t)::<lambda()> > (__f=...) at /usr/include/c++/11/bits/invoke.h:61
#16 std::__invoke<com::centreon::broker::pool::pool(const std::shared_ptr<boost::asio::io_context>&, size_t)::<lambda()> > (__fn=...) at /usr/include/c++/11/bits/invoke.h:96
#17 std::thread::_Invoker<std::tuple<com::centreon::broker::pool::pool(const std::shared_ptr<boost::asio::io_context>&, size_t)::<lambda()> > >::_M_invoke<0> (this=0x30b31a8) at /usr/include/c++/11/bits/std_thread.h:259
#18 std::thread::_Invoker<std::tuple<com::centreon::broker::pool::pool(const std::shared_ptr<boost::asio::io_context>&, size_t)::<lambda()> > >::operator() (this=0x30b31a8) at /usr/include/c++/11/bits/std_thread.h:266
#19 std::thread::_State_impl<std::thread::_Invoker<std::tuple<com::centreon::broker::pool::pool(const std::shared_ptr<boost::asio::io_context>&, size_t)::<lambda()> > > >::_M_run(void) (this=0x30b31a0) at /usr/include/c++/11/bits/std_thread.h:211
#20 0x00007f9ec20db924 in execute_native_thread_routine () from /lib64/libstdc++.so.6
#21 0x00007f9ec1c9f802 in start_thread () from /lib64/libc.so.6
#22 0x00007f9ec1c3f450 in clone3 () from /lib64/libc.so.6
(gdb)

"unified_sql: the 'metrics' table contains rows with metric_id <= 0" but it’s false

BUG REPORT INFORMATION

Prerequisites

Versions

For the RPM based systems

centreon-trap-22.10.9-1.el7.noarch
centreon-gorgone-22.10.1-1.el7.noarch
centreon-license-manager-common-22.10.1-1.el7.noarch
centreon-release-22.10-1.el7.centos.noarch
centreon-engine-daemon-22.10.2-1.el7.x86_64
centreon-engine-22.10.2-1.el7.x86_64
centreon-web-22.10.9-1.el7.noarch
centreon-business-release-22.10-1.el7.centos.noarch
centreon-awie-22.10.0-5.el7.centos.noarch
centreon-clib-22.10.2-1.el7.x86_64
centreon-engine-extcommands-22.10.2-1.el7.x86_64
centreon-poller-22.10.9-1.el7.noarch
centreon-fingerprint-20.10.0-2.el7.centos.x86_64
centreon-common-22.10.9-1.el7.noarch
centreon-broker-storage-22.10.2-1.el7.x86_64
centreon-broker-cbd-22.10.2-1.el7.x86_64
centreon-connector-ssh-22.10.2-1.el7.x86_64
centreon-gorgone-centreon-config-22.10.1-1.el7.noarch
centreon-database-22.10.9-1.el7.noarch
centreon-central-22.10.9-1.el7.noarch
centreon-pp-manager-22.10.0-6.el7.centos.noarch
centreon-auto-discovery-server-22.10.2-1.el7.noarch
centreon-broker-22.10.2-1.el7.x86_64
centreon-broker-cbmod-22.10.2-1.el7.x86_64
centreon-license-manager-22.10.1-1.el7.noarch
centreon-perl-libs-22.10.9-1.el7.noarch
centreon-connector-22.10.2-1.el7.x86_64
centreon-bi-server-22.10.2-1.el7.noarch
centreon-broker-core-22.10.2-1.el7.x86_64
centreon-connector-perl-22.10.2-1.el7.x86_64
centreon-22.10.9-1.el7.noarch

Operating System

Rocky Linux

How the the component has been installed and versions

Packages

-- Describe the encountered issue --
In the broker log :
[2023-07-18T09:36:16.727+02:00] [sql] [error] unified_sql: the 'metrics' table contains rows with metric_id <= 0 ; you should remove them.

I checked into the database

MariaDB [centreon_storage]> select * from metrics where metric_id <= 0;
Empty set (0,001 sec)

MariaDB [centreon_storage]>

Step in RRDs does not match check interval

BUG REPORT INFORMATION

Prerequisites

Versions

For the RPM based systems

centreon-broker-storage-22.10.0-16.el8.x86_64
centreon-broker-cbd-22.10.0-16.el8.x86_64
centreon-broker-22.10.0-16.el8.x86_64
centreon-broker-cbmod-22.10.0-16.el8.x86_64
centreon-broker-core-22.10.0-16.el8.x86_64
centreon-engine-22.10.0-16.el8.x86_64
centreon-engine-daemon-22.10.0-16.el8.x86_64
centreon-engine-extcommands-22.10.0-16.el8.x86_64

Operating System

Oracle Linux 8

How the the component has been installed and versions

  • From sources, from packages
  • components versions

Description

It looks like RRDs are not created with the right step.
When I push new conf, after the first check that retrieve metrics, the RRDs are created with a 5min step eventhough the check is not configured to be executed every 5min.
On the other hand, when I rebuild the graph, the step correspond with the check interval.

Steps to Reproduce

  1. Create a check with a 1min interval,
  2. Dump the RRD file (rrdtool dump /var/lib/centreon/metrics/.rrd .xml),
  3. Rebuild the RRD (through UI),
  4. Dump the RRD file.

Describe the received result

First case : the pdp_per_row of the first rra header will be 300 (5min)
<pdp_per_row>300</pdp_per_row> <!-- 300 seconds -->

After rebuild : pdp_per_row is 60 (1min)
<pdp_per_row>60</pdp_per_row> <!-- 60 seconds -->

Describe the expected result

A pdp_per_row corresponding to the check interval at RRD creation.

Additional relevant information (e.g. frequency, ...)

After saying all this, it looks like it is working correctly sometimes :)
But I can't say why... after a reload or a restart, I don't know...

[22.10.0] ACK macros not working with notification commands

Hello, seems that AKNOWLEDGEMENT related macros are not working in notification commands.

Here when I try to use for ex the $SERVICEACKAUTHOR$ and $SERVICEACKCOMMENT$ :

  • command line:
    $CENTREONPLUGINS$/test.sh "$NOTIFICATIONTYPE$" "$SERVICEACKAUTHOR$" "$SERVICEACKCOMMENT$"

  • centengine.log:
    [2022-12-07T17:06:33.815+01:00] [commands] [debug] [1910013] Running command '/usr/lib/centreon/plugins//test.sh "ACKNOWLEDGEMENT" "" ""'...

If I use other random macros there is no problem:

  • command line:
    $CENTREONPLUGINS$/test.sh "$NOTIFICATIONTYPE$" "$HOSTSTATE$" "$DATE$"

  • centengine.log:
    [2022-12-07T17:09:28.200+01:00] [commands] [debug] [1910013] Running command '/usr/lib/centreon/plugins//test.sh "ACKNOWLEDGEMENT" "DOWN" "07-12-2022"'...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.