TCP Protocol
Contenu du Pack​
Modèles​
Le connecteur de supervision Protocol TCP apporte 2 modèles d'hôte :
- App-Protocol-Tcp
- App-Protocol-Tcp-Only
Le connecteur apporte les modèles de service suivants (classés par modèle d'hôte):
- App-Protocol-Tcp
- App-Protocol-Tcp-Only
- Sans modèle d'hôte
Alias | Modèle de service | Description |
---|---|---|
N/A | N/A | N/A |
Alias | Modèle de service | Description |
---|---|---|
N/A | N/A | N/A |
Alias | Modèle de service | Description |
---|---|---|
Connection-Status | App-Protocol-Tcp-Connection-Status | Contrôle la connexion à un port TCP |
Response-Time | App-Protocol-Tcp-Response-Time | Contrôle le temps de réponse à un port TCP |
Ces services ne sont pas automatiquement créés lorsque le modèle d'hôte est appliqué.
Métriques & statuts collectés​
- Connection-Status
- Response-Time
Métrique | Unité |
---|---|
status | N/A |
tcp.response.time.seconds | s |
Métrique | Unité |
---|---|
tcp.roundtrip.time.average.milliseconds | ms |
tcp.roundtrip.time.maximum.milliseconds | ms |
tcp.roundtrip.time.minimum.milliseconds | ms |
tcp.packets.loss.percentage | % |
Installation​
Pack de supervision​
Si la plateforme est configurée avec une licence online, l'installation d'un paquet n'est pas requise pour voir apparaître le pack dans le menu Configuration > Gestionnaire de connecteurs de supervision. Au contraire, si la plateforme utilise une licence offline, installez le paquet sur le serveur central via la commande correspondant au gestionnaire de paquet associé à sa distribution :
- Alma / RHEL / Oracle Linux 8
- Alma / RHEL / Oracle Linux 9
- Debian 11
- CentOS 7
dnf install centreon-pack-applications-protocol-tcp
dnf install centreon-pack-applications-protocol-tcp
apt install centreon-pack-applications-protocol-tcp
yum install centreon-pack-applications-protocol-tcp
Quel que soit le type de la licence (online ou offline), installez le Pack Protocol TCP depuis l'interface web et le menu Configuration > Gestionnaire de connecteurs de supervision.
Plugin​
À partir de Centreon 22.04, il est possible de demander le déploiement automatique du plugin lors de l'utilisation d'un pack. Si cette fonctionnalité est activée, et que vous ne souhaitez pas découvrir des éléments pour la première fois, alors cette étape n'est pas requise.
Plus d'informations dans la section Installer le plugin.
Utilisez les commandes ci-dessous en fonction du gestionnaire de paquets de votre système d'exploitation :
- Alma / RHEL / Oracle Linux 9
- Alma / RHEL / Oracle Linux 8
- CentOS 7
- Debian 11
dnf install centreon-plugin-Applications-Protocol-Tcp
dnf install centreon-plugin-Applications-Protocol-Tcp
yum install centreon-plugin-Applications-Protocol-Tcp
apt install centreon-plugin-applications-protocol-tcp
Configuration​
Hôte​
- App-Protocol-Tcp
- App-Protocol-Tcp-Only
- Ajoutez un hôte à Centreon depuis la page Configuration > Hôtes.
- Complétez les champs Nom, Alias & IP Address/DNS correspondant à votre ressource.
- Appliquez le modèle d'hôte App-Protocol-Tcp-custom.
Obligatoire | Macro | Description | Défaut |
---|---|---|---|
TCPPACKETLOSSPERCENT | 50 | ||
TCPPACKETS | 1 | ||
TCPPORT | 80 | ||
TCPTIMEOUT | 3 |
- Ajoutez un hôte à Centreon depuis la page Configuration > Hôtes.
- Complétez les champs Nom, Alias & IP Address/DNS correspondant à votre ressource.
- Appliquez le modèle d'hôte App-Protocol-Tcp-Only-custom.
- Une fois le modèle appliqué, les macros ci-dessous indiquées comme requises (Obligatoire) doivent être renseignées.
Obligatoire | Macro | Description | Défaut |
---|---|---|---|
TCPPACKETLOSSPERCENT | 50 | ||
TCPPACKETS | 1 | ||
TCPPORT | 80 | ||
TCPTIMEOUT | 3 |
Service​
Une fois le modèle appliqué, les macros ci-dessous indiquées comme requises (Obligatoire) doivent être renseignées.
- Connection-Status
- Response-Time
Obligatoire | Macro | Description | Défaut |
---|---|---|---|
TIMEOUT | Connection timeout in seconds (Default: 3) | 5 | |
PORT | Port used | ||
WARNING | |||
CRITICAL | |||
EXTRAOPTIONS | Any extra option you may want to add to the command line (eg. a --verbose flag) |
Obligatoire | Macro | Description | Défaut |
---|---|---|---|
PACKETS | Number of packets to send (Default: 5) | 5 | |
TIMEOUT | Set timeout in seconds (Default: 5) | 5 | |
PORT | Port used | ||
WARNINGPL | Packets lost threshold warning in % | ||
CRITICALPL | Packets lost threshold critical in % | ||
WARNINGRTA | Response time threshold warning in milliseconds | ||
CRITICALRTA | Response time threshold critical in milliseconds | ||
WARNINGRTMAX | |||
CRITICALRTMAX | |||
WARNINGRTMIN | |||
CRITICALRTMIN | |||
EXTRAOPTIONS | Any extra option you may want to add to the command line (eg. a --verbose flag) |
Comment puis-je tester le plugin et que signifient les options des commandes ?​
Une fois le plugin installé, vous pouvez tester celui-ci directement en ligne
de commande depuis votre collecteur Centreon en vous connectant avec
l'utilisateur centreon-engine (su - centreon-engine
) :
/usr/lib/centreon/plugins//centreon_protocol_tcp.pl \
--plugin=apps::protocols::tcp::plugin \
--mode=response-time \
--hostname='10.0.0.1' \
--port='80' \
--timeout='' \
--warning-rta='' \
--critical-rta='' \
--warning-rtmax='' \
--critical-rtmax='' \
--warning-rtmin='' \
--critical-rtmin='' \
--warning-pl='' \
--critical-pl='' \
La commande devrait retourner un message de sortie similaire à :
OK: TCP '10.0.0.1' port 80 rta 0.633ms, lost 0% | 'tcp.roundtrip.time.average.milliseconds'=0.633ms;;;0; 'tcp.roundtrip.time.maximum.milliseconds'=2.145ms;;;0; 'tcp.roundtrip.time.minimum.milliseconds'=0.193ms;;;0; 'tcp.packets.loss.percentage'=0%;;;0;100
Modes disponibles​
Tous les modes disponibles peuvent être affichés en ajoutant le paramètre
--list-mode
à la commande :
/usr/lib/centreon/plugins//centreon_protocol_tcp.pl \
--plugin=apps::protocols::tcp::plugin \
--list-mode
Le plugin apporte les modes suivants :
Mode | Modèle de service associé |
---|---|
connection-status | App-Protocol-Tcp-Connection-Status |
response-time | App-Protocol-Tcp-Response-Time |
Options complémentaires​
Option | Description | Type |
---|---|---|
--mode | Choose a mode. | Global |
--dyn-mode | Specify a mode with the path (separated by '::'). | Global |
--list-mode | List available modes. | Global |
--mode-version | Check minimal version of mode. If not, unknown error. | Global |
--version | Display plugin version. | Global |
--pass-manager | Use a password manager. | Global |
--verbose | Display long output. | Output |
--debug | Display also debug messages. | Output |
--filter-perfdata | Filter perfdata that match the regexp. | Output |
--filter-perfdata-adv | Advanced perfdata filter. Eg: --filter-perfdata-adv='not (%(value) == 0 and %(max) eq "")' | Output |
--explode-perfdata-max | Put max perfdata (if it exist) in a specific perfdata (without values: same with '_max' suffix) (Multiple options) | Output |
--change-perfdata --extend-perfdata | Change or extend perfdata. Syntax: --extend-perfdata=searchlabel,newlabel,target[,[newuom],[min],[m ax]] Common examples: Change storage free perfdata in used: --change-perfdata=free,used,invert() Change storage free perfdata in used: --change-perfdata=used,free,invert() Scale traffic values automaticaly: --change-perfdata=traffic,,scale(auto) Scale traffic values in Mbps: --change-perfdata=traffic_in,,scale(Mbps),mbps Change traffic values in percent: --change-perfdata=traffic_in,,percent() | Output |
--extend-perfdata-group | Extend perfdata from multiple perfdatas (methods in target are: min, max, average, sum) Syntax: --extend-perfdata-group=searchlabel,newlabel,target[,[newuom],[m in],[max]] Common examples: Sum wrong packets from all interfaces (with interface need --units-errors=absolute): --extend-perfdata-group=',packets_wrong,sum(packets_(discard |error)_(in|out))' Sum traffic by interface: --extend-perfdata-group='traffic_in_(.*),traffic_$1,sum(traf fic_(in|out)_$1)' | Output |
--change-short-output --change-long-output | Change short/long output display: --change-short-output=pattern~replace~modifier | Output |
--change-exit | Change exit code: --change-exit=unknown=critical | Output |
--range-perfdata | Change perfdata range thresholds display: 1 = start value equals to '0' is removed, 2 = threshold range is not display. | Output |
--filter-uom | Filter UOM that match the regexp. | Output |
--opt-exit | Optional exit code for an execution error (i.e. wrong option provided, SSH connection refused, timeout, etc) (Default: unknown). | Output |
--output-ignore-perfdata | Remove perfdata from output. | Output |
--output-ignore-label | Remove label status from output. | Output |
--output-xml | Display output in XML format. | Output |
--output-json | Display output in JSON format. | Output |
--output-openmetrics | Display metrics in OpenMetrics format. | Output |
--output-file | Write output in file (can be used with json and xml options) | Output |
--disco-format | Display discovery arguments (if the mode manages it). | Output |
--disco-show | Display discovery values (if the mode manages it). | Output |
--float-precision | Set the float precision for thresholds (Default: 8). | Output |
--source-encoding | Set encoding of monitoring sources (In some case. Default: 'UTF-8'). | Output |
Options des modes​
Les options spécifiques aux modes sont listées ci-dessus :
- Connection-Status
- Response-Time
Option | Description | Type |
---|---|---|
--hostname | IP Addr/FQDN of the host | Mode |
--port | Port used | Mode |
--ssl | Use SSL connection. (no attempt is made to check the certificatevalidity by default). | Mode |
--timeout | Connection timeout in seconds (Default: 3) | Mode |
--unknown-status | Set unknown threshold for status. Can used special variables like: %{status}, %{port}, %{error_message} | Mode |
--warning-status | Set warning threshold for status. Can used special variables like: %{status}, %{port}, %{error_message} | Mode |
--critical-status | Set critical threshold for status (Default: '%{status} eq "failed"'). Can used special variables like: %{status}, %{port}, %{error_message} | Mode |
--warning-time | Threshold warning in seconds | Mode |
--critical-time | Threshold critical in seconds | Mode |
Option | Description | Type |
---|---|---|
--filter-counters | Only display some counters (regexp can be used). Example : --filter-counters='rta' | Mode |
--hostname | IP Addr/FQDN of the host | Mode |
--port | Port used | Mode |
--timeout | Set timeout in seconds (Default: 5). | Mode |
--packets | Number of packets to send (Default: 5). | Mode |
--warning-rta | Response time threshold warning in milliseconds | Mode |
--critical-rta | Response time threshold critical in milliseconds | Mode |
--warning-pl | Packets lost threshold warning in % | Mode |
--critical-pl | Packets lost threshold critical in % | Mode |
Pour un mode, la liste de toutes les options complémentaires et leur signification peut être
affichée en ajoutant le paramètre --help
à la commande :
/usr/lib/centreon/plugins//centreon_protocol_tcp.pl \
--plugin=apps::protocols::tcp::plugin \
--mode=connection-status \
--help
Diagnostic des erreurs communes​
Rendez-vous sur la documentation dédiée pour le diagnostic des erreurs communes des plugins Centreon.