Documentation Utilisateur/Développeur Client de Monitoring CamTrace Sommaire I. Fonctionnalités...2 II. Installation - Désinstallation...3 III. Présentation...3 1) Connexion...3 2) Supprimer...4 3) Ignorer...5 4) Préférences...5 5) Déplier Replier...6 6) Aide...6 IV. Développement...6 1) Généralités...6 2) Connexion...7 3) Authentification...7 4) Dialogue...7 5) API Erreurs...8 Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 1/9
I. F ONCTI ONNALI TÉS CamTrace intègre un nouveau système de monitoring à partir de la version 11. Celui-ci vous permet de surveiller depuis un poste client sous Microsoft Windows (XP et supérieur), les fonctions et services suivants L'état de vos disques : RAID (cartes LSI/3ware et Areca supportées) en utilisant les binaires propres aux cartes RAID, en cas de problème sont affichées les informations du ou des volume(s) concernés ainsi que les dernières entrées du journal de la carte. SATA directement sur la carte mère (disque système ou données) en utilisant le système S.M.A.R.T 1 qui permet de faire un diagnostic et d'anticiper les erreurs. Le correct fonctionnement des trois services indispensables à CamTrace : La base de données (PostgreSQL) Le moteur vidéo (scamd) Le serveur web (apache) Ainsi que différents états des caméras: en fonctionnement mais sans enregistrement en cours de connexion déconnectée connectée mais le flux est impossible à récupérer trop longue à être jointe Ce client communique avec le serveur (par défaut sur le port 9000), une authentification de celui-ci est nécessaire (utilisateur et mot de passe indépendant de l'interface CamTrace), et la communication est chiffrée en utilisant SSL. La fenêtre principale du client peut être réduite dans la zone de notification, c'est à dire près de l'horloge dans la barre des tâches. L'icône représente l'oeil CamTrace et la couleur de celui-ci reflète aussi l'état de santé de vos serveurs. Lorsque celle-ci est verte, toutes les vérifications de tous vos serveurs ne remontent pas d'erreur. Dès qu'une erreur est détectée, l'icône devient rouge. En plus de ce signal visuel pour attirer votre attention, le client de monitoring peut émettre un beep, ce son est émis par le beeper interne de votre ordinateur. Il ne nécessite donc ni carte son, ni enceinte pour être entendu. Il est émis dès qu'une erreur survient et continue à être emis à intervalle régulier tant que le problème n'est pas réglé (ou ignoré). Si deux problèmes surviennent en même temps, un beep sera émis pour chacun de ces problèmes. Il est possible, mais pas recommandé, de désactiver ce beep. 1 http://en.wikipedia.org/wiki/s.m.a.r.t. Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 2/9
I I. I NSTALLATI ON - D ÉSI NSTALLATI ON L'installation du client de monitoring pour CamTrace se fait par un simple installateur. Il suffit de suivre les étapes de celui-ci. A la fin de l'installation, le logiciel MonitorC s'ouvrira automatiquement. L'installateur peut être trouvé soit directement depuis l'interface web de votre CamTrace dans Aide Outils, soit sur le FTP de CamTrace (ftp.camtrace.com) Un fois installé, MonitorC peut être lancé par un raccourci sur le bureau ou dans le menu Démarrer Programmes Monitorc Monitorc La désinstallation se fait simplement en exécutant le désinstallateur. Celui-ci se trouve dans Démarrer MonitorC Uninstall. Les fichiers de configuration ne sont pas supprimés pendant la désintallation, si vous souhaitez le faire, supprimer le dossier C:\Program Files\Monitorc aprés avoir exécuté le désinstallateur. I I I. P RÉSENTATI ON 1) Connexion Vue générale au premier lancement de MonitorC Nom d'hôte ou adresse IP Port du daemon de monitoring Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 3/9
La gestion des utilisateurs/mots de passe du système de monitoring est complétement dissociée du serveur CamTrace. Sur le serveur le fichier est situé dans /usr/local/etc/monitord/creds.txt sous la forme utilisateur:mot de passe en clair suivi d'un retour à la ligne. Vous n'avez pas à le modifier. Le port peut être modifié manuellement sur le serveur dans le fichier /usr/local/etc/monitord/monitord.conf (pas intégré à Menucam pour l'instant). A la connexion, MonitorC récupèrera le nom du serveur CamTrace comme déclaré dans l'interface web. Ce nom vous sera proposé pour nommer votre serveur. Si vous ne souhaitez pas l'utiliser, vous pouvez le remplacer dans cette fenêtre. Champ pour nommer votre serveur CamTrace Ce nom vous permettra de gérer vos CamTrace facilement, même si ils sont situés derrière un routeur. 2) Supprimer Ce menu vous permet de supprimer un de vos serveurs déclaré de la configuration de MonitorC. Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 4/9
3) Ignorer Serveur(s) a ignorer Erreur(s) à ignorer Temps pendant lequel le(s) erreur(s) seront ignorés Ce menu vous permet d'ignorer (ou d'acquitter) des erreurs remontées par le système de monitoring. 4) Préférences Ce menu vous permet de régler les préférences générales du logiciel. Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 5/9
Premièrement vous pouvez activer/désactiver la fonctionnalité de dépliement automatique lors d'une erreur. Par défaut cette option est désactivée. Elle vous permet de déplier automatiquement le champ d'informations concernant l'erreur détectée. De même quand le problème disparait, le champ se replie automatiquement. Deuxièmement, vous pouvez choisir de désactiver le bip lors d'une détection d'erreur. Par défaut cette option n'est pas activée. Il n'est pas recommandé de l'activer. 5) Déplier Replier Le premier bouton vous permet de déplier automatiquement le champ information associé à chaques erreurs de serveurs. Le bouton replier vous permet de replier tous les champs dépliés et ainsi d'avoir rapidement une vue d'ensemble de l'état de vos serveurs. 6) Aide Cette fenêtre vous rappele la signification des différentes icônes. IV. DÉVELOPPEMENT 1) Généralités Le fonctionnement technique du système de monitoring repose sur une architecture client-serveur. La connexion est chifrée en SSL et une authentification est nécessaire. Dans cette partie seront détaillées les informations nécessaire au développement d'un client tiers. Ce document s'adresse donc à des personnes maitrisant les bases d'une connexion TCP. Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 6/9
2) Connexion La connexion au serveur de monitoring s'effectue par défaut sur le port 9000. Celle-ci est chiffrée à l'aide de la librairie SSL. Ce chiffrement peut-être désactivé pour le debugging afin de récupérer des informations en clair. Toujours dans le cadre du débug, le serveur peut être lancé sans être sous la forme d'un daemon afin de récupérer les erreurs sur la console. Ces options peuvent être modifiées dans le fichier /usr/local/etc/monitord/monitord.conf du CamTrace. La connexion s'effectue de manière standard en TCP. 3) Authentification Une fois la connexion au serveur effectué celui-ci vous demande de vous authenthifier par le message suivant: Login with USER <name> followed by PASS <password> Ce à quoi il vous faudra répondre pour l'utilisateur "monitor "et le mot de pass "monitor": USER monitor PASS monitor Si l'utilisateur est reconnu, le serveur répondra: Login successful. Sinon: ERR: User/Pass denied! Les utilisateurs sont déclarés dans le fichier /usr/local/etc/monitord/creds.txt sous la forme: user:pass Enfin le serveur vous enverra le nom déclaré dans la configuration du CamTrace sous la forme: SRVNAME:nom_du_serveur 4) Dialogue Il n'y a pas de réel dialogue une fois la connexion établie. Le client n'a plus rien à envoyer, il n'a qu'a recevoir ce que le serveur lui transmet. Pour commencer, le serveur envoie toutes les 5 secondes un message : check Cela vous permet de vérifier que la connexion réseau n'a été coupé à aucun moment. A partir du premier check, il ne doit pas y avoir plus de 5 secondes avant le second, sinon la communication a un problème. Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 7/9
5) API Erreurs Le serveur vous enverra des informations à propos des erreurs détectées sous le forme: PB:erreur:infos Ou erreur peut prendre la valeur : raid smartd scamd httpd postgre camera Si l'information fait plusieurs lignes, elle sera encodée en base64, sinon elle sera envoyée en clair. Les informations envoyées ne dépassent jamais une ligne dans le cas de scamd, httpd et postgresql car il n'y a pas d'information remontée. Exemple d'erreur concernant le RAID: PB:raid:Vm9sdW1lIFNldCBJbmZvcm1hdGlvbiAKVm9sdW1lIFNldCBOYW1lIDogQVJDLTExMjAtVk9MIzA wiapsywlkifnldcboyw1licagoiayldvuicagicagicagicagclzvbhvtzsbdyxbhy2l0esa6idiumedccl NDU0kgQ2gvSWQvTHVuICA6IDAwLzAwLzAwClJhaWQgTGV2ZWwgICAgICA6IFJhaWQxKzAKU3RyaXBlIFNpe mugicagidognjrlck1lbwjlcibeaxnrcyagica6idikq2fjagugtw9kzsagicagidogv3jpdgugqmfjawpu YWdnZWQgUXVldWluZyAgOiBFbmFibGVkClZvbHVtZSBTdGF0ZSAgICA6IERlZ3JhZGVkCjIwMTEtMDktMDY gmdg6mju6mtygiegvvybnt05jve9sicagicagumfpzcbqb3dlcmvkie9ucjiwmtetmdgtmzegmti6mdm6mj YgIEgvVyBNT05JVE9SICAgICAgUmFpZCBQb3dlcmVkIE9uCjIwMTEtMDgtMjkgMTE6NDA6MzAgIFByb3h5I E9yIEluYmFuZCAgSFRUUCBMb2cgSW4KMjAxMS0wOC0wOSAxMjo1OTozNyAgSC9XIE1PTklUT1IgICAgICBS YWlkIFBvd2VyZWQgT24KMjAxMS0wOC0wNSAxMzoxODozNCAgSC9XIE1PTklUT1IgICAgICBSYWlkIFBvd2V yzwqgt24kmjaxms0wny0yniaxmjoyoto0osagsc9xie1ptklut1igicagicbsywlkifbvd2vyzwqgt24kmj AxMS0wNy0yNiAxMjoxNzowOCAgSC9XIE1PTklUT1IgICAgICBSYWlkIFBvd2VyZWQgT24KMjAxMS0wNy0yN iawodo0otozmiagsc9xie1ptklut1igicagicbsywlkifbvd2vyzwqgt24kmjaxms0wny0yniaxmdozmzo0 OSAgUmFpZCBTZXQgIyAwMSAgICBDcmVhdGUgUmFpZFNldAoyMDExLTA3LTI2IDA4OjEwOjQ2ICBQcm94eSB PciBJbmJhbmQgIEhUVFAgTG9nIEluCjIwMTEtMDctMjEgMTQ6MDc6NTQgIEgvVyBNT05JVE9SICAgICAgUm FpZCBQb3dlcmVkIE9uCjIwMTEtMDctMjEgMTQ6MDU6MjQgIElERSBDaGFubmVsICMwMyAgRGV2aWNlIFJlb W92ZWQKMjAxMS0wNy0yMSAxNDowNToyMyAgMiw1VCAgICAgICAgICAgICBSYWlkU2V0IERlZ3JhZGVkCjIw MTEtMDctMjEgMTQ6MDU6MjMgIEFSQy0xMTIwLVZPTCMwMCAgVm9sdW1lIERlZ3JhZGVkCjIwMTEtMDctMjE gmtq6mda6ndcgiegvvybnt05jve9sicagicagumfpzcbqb3dlcmvkie9ucg== Ce qui décodé en base64 donne: PB:raid:Volume Set Information Volume Set Name : ARC-1120-VOL#00 Raid Set Name : 2,5T Volume Capacity : 2.0GB SCSI Ch/Id/Lun : 00/00/00 Raid Level : Raid1+0 Stripe Size : 64K Member Disks : 2 Cache Mode : Write Back Tagged Queuing : Enabled Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 8/9
Volume State : Degraded 2011-09-06 08:25:16 H/W MONITOR Raid Powered On 2011-08-31 12:03:26 H/W MONITOR Raid Powered On 2011-08-29 11:40:30 Proxy Or Inband HTTP Log In 2011-08-09 12:59:37 H/W MONITOR Raid Powered On 2011-08-05 13:18:34 H/W MONITOR Raid Powered On 2011-07-26 12:29:49 H/W MONITOR Raid Powered On 2011-07-26 12:17:08 H/W MONITOR Raid Powered On 2011-07-26 08:49:32 H/W MONITOR Raid Powered On 2011-07-26 10:33:49 Raid Set # 01 Create RaidSet 2011-07-26 08:10:46 Proxy Or Inband HTTP Log In 2011-07-21 14:07:54 H/W MONITOR Raid Powered On 2011-07-21 14:05:24 IDE Channel #03 Device Removed 2011-07-21 14:05:23 2,5T RaidSet Degraded 2011-07-21 14:05:23 ARC-1120-VOL#00 Volume Degraded 2011-07-21 14:00:47 H/W MONITOR Raid Powered On Cas particulier ou le serveur n'a pas de RAID ou la carte RAID n'est pas supportée, le serveur enverra en tout début de connexion le message suivant: PB:noraid Ce n'est pas une erreur mais vous permet de gérer le fait que le serveur n'a pas de RAID. Comme dit précédement, dans le cas de scamd, httpd et postgresql, il n'y a pas d'information, les messages seront donc sous la forme: PB:httpd ou PB:scamd ou PB:postgre Enfin, dans le cas ou il n'y a pas d'erreur, le serveur renvoi un message sous la forme: OK:httpd OK:scamd OK:smartd OK:camera OK:postgre OK:raid Documentation Client de Monitoring CamTrace Version 1.0.2 Septembre 2011 9/9