Vous êtes sur la page 1sur 10

analyse de logs

I. Les logs
Les logs sont des journaux d’événements où sont collectés les événements relatifs à
l’état d’un système

II. Centralisation des logs


La centralisation des logs est une solution qui consiste à rassembler tous les logs d’un
groupe de machines sur la même plateforme. Toutes les informations des logs
deviennent ainsi accessibles via une interface unique, simple d’accès et d’exploitation

La centralisation des logs est un processus continu qui se décompose en plusieurs


étapes :
o La génération des logs : vous choisissez les logs à produire selon les objectifs et
besoins du projet.
o La collecte : les logs sont ensuite envoyés vers une plateforme commune.
o Le filtrage : vous analysez et filtrez les différentes metrics et variables
pour répondre aux besoins spécifiques du monitoring.
o La présentation des données : cette étape permet de créer des Dashboard
personnalisés regroupant les données synthétisées, pour permettre de lire et
comprendre les données des logs.

III. Comparison des outils des logs

ELK :
ELK est une collection de trois produits open source : Elasticsearch, Logstash et Kibana. La
pile ELK fournit une journalisation centralisée afin d'identifier les problèmes avec les
serveurs ou les applications. Il vous permet de rechercher tous les journaux en un seul
endroit. Cela aide également à trouver des problèmes sur plusieurs serveurs en connectant les
journaux pendant une période spécifique.

 E signifie ElasticSearch : utilisé pour stocker les journaux


 L signifie LogStash : utilisé à la fois pour l'expédition ainsi que pour le traitement et le
stockage des journaux
 K signifie Kibana : est un outil de visualisation (une interface Web) qui est hébergé
via Nginx ou Apache

ElasticSearch, LogStash et Kibana sont tous développés, gérés et maintenus par la société
nommée Elastic.
ELK Stack est conçu pour permettre aux utilisateurs de prendre des données de n'importe
quelle source, dans n'importe quel format, et de rechercher, analyser et visualiser ces données
en temps réel.

 Journaux : les journaux du serveur qui doivent être analysés sont identifiés


 Logstash : collectez les données des journaux et des événements. Il analyse et
transforme même les données
 ElasticSearch : les données transformées de Logstash sont stockées, recherchées et
indexées.
 Kibana : Kibana utilise Elasticsearch DB pour explorer, visualiser et partager

Cependant, un composant supplémentaire est nécessaire ou une collecte de données appelée


Beats. Cela a conduit Elastic à renommer ELK en Elastic Stack.

Tout en traitant de très grandes quantités de données, vous aurez peut-être besoin de Kafka,
RabbitMQ pour la mise en mémoire tampon et la résilience. Pour la sécurité, nginx peut être
utilisé.
Elasticsearch
Elasticsearch est une base de données NoSQL. Il est basé sur le moteur de recherche Lucene
et est construit avec des API RESTful. Il offre un déploiement simple, une fiabilité maximale
et une gestion facile. Il propose également des requêtes avancées pour effectuer une analyse
détaillée et stocke toutes les données de manière centralisée. Il est utile pour effectuer une
recherche rapide des documents.

Elasticsearch vous permet également de stocker, rechercher et analyser de gros volumes de


données. Il est principalement utilisé comme moteur sous-jacent pour alimenter les
applications qui ont rempli les exigences de recherche. Il a été adopté dans les plates-formes
de moteurs de recherche pour les applications Web et mobiles modernes. Outre une recherche
rapide, l'outil propose également des analyses complexes et de nombreuses fonctionnalités
avancées.

Fonctionnalités de la recherche élastique :

 Le serveur de recherche open source est écrit en Java


 Utilisé pour indexer tout type de données hétérogènes
 Possède une interface Web API REST avec une sortie JSON
 Recherche en texte intégral
 Recherche en temps quasi réel (NRT)
 Magasin de documents JSON partitionné, répliqué et consultable
 Magasin de documents distribué sans schéma, basé sur REST et JSON
 Prise en charge multilingue et géolocalisation

Avantages d'Elasticsearch

 Stockez des données sans schéma et créez également un schéma pour vos données
 Manipulez vos données enregistrement par enregistrement à l'aide des API multi-
documents
 Effectuez le filtrage et l'interrogation de vos données pour obtenir des informations
 Basé sur Apache Lucene et fournit une API RESTful
 Fournit une évolutivité horizontale, une fiabilité et une capacité mutualisée pour une
utilisation en temps réel de l'indexation afin d'accélérer la recherche
 Vous aide à mettre à l'échelle verticalement et horizontalement
Termes importants utilisés dans Elastic Search

Terme Usage
Un cluster est un ensemble de nœuds qui, ensemble, contiennent des données et fournissent des
Grappe
capacités d'indexation et de recherche jointes.
Nœud Un nœud est une instance elasticsearch. Il est créé au démarrage d'une instance elasticsearch.
Un index est une collection de documents qui ont des caractéristiques similaires. par exemple,
données client, catalogue de produits. Il est très utile lors des opérations d'indexation, de
Indice
recherche, de mise à jour et de suppression. Il vous permet de définir autant d'index dans un seul
cluster.
C'est l'unité d'information de base qui peut être indexée. Il est exprimé en paire JSON (clé :
Document valeur). '{"utilisa3teur": "nullcon"}'. Chaque document est associé à un type et à un identifiant
unique.
Chaque index peut être divisé en plusieurs partitions pour pouvoir distribuer les données. La
Tesson partition est la partie atomique d'un index, qui peut être distribuée sur le cluster si vous
souhaitez ajouter plus de nœuds.

Logstash 
Logstash est l'outil de pipeline de collecte de données. Il collecte les entrées de données et les
alimente dans Elasticsearch. Il rassemble tous les types de données provenant de différentes
sources et les rend disponibles pour une utilisation ultérieure.

Logstash peut unifier les données provenant de sources disparates et normaliser les données
dans les destinations souhaitées. Il vous permet de nettoyer et de démocratiser toutes vos
données pour l'analyse et la visualisation des cas d'utilisation.

Il se compose de trois composants :

 Entrée : transmission des journaux pour les traiter dans un format compréhensible par
la machine
 Filtres : C'est un ensemble de conditions pour effectuer une action ou un événement
particulier
 Sortie : Décideur pour l'événement traité ou le journal

Fonctionnalités de Logstash
Maintenant, dans ce didacticiel LogStash, découvrons les fonctionnalités de LogStash :

 Les événements sont transmis à chaque phase à l'aide de files d'attente internes
 Permet différentes entrées pour vos journaux
 Filtrage/analyse de vos journaux

Avantage de Logstash

 Les offres centralisent le traitement des données


 Il analyse une grande variété de données et d'événements structurés/non structurés
 ELK LogStash propose des plugins pour se connecter à différents types de sources et
de plates-formes d'entrée

Kibana
Kibana est une visualisation de données qui complète la pile ELK. Cet outil est utilisé pour
visualiser les documents Elasticsearch et aide les développeurs à en avoir un aperçu rapide. Le
tableau de bord Kibana propose divers diagrammes interactifs, données géospatiales et
graphiques pour visualiser des requêtes complexes.

Il peut être utilisé pour rechercher, afficher et interagir avec les données stockées dans les
répertoires Elasticsearch. Kibana vous aide à effectuer une analyse de données avancée et à
visualiser vos données dans une variété de tableaux, de graphiques et de cartes.

Dans Kibana, il existe différentes méthodes pour effectuer des recherches sur vos données.

Voici les types de recherche les plus courants :

Type de recherche Usage


Recherches en texte libre Il est utilisé pour rechercher une chaîne spécifique
Recherches au niveau du champ Il est utilisé pour rechercher une chaîne dans un champ spécifique
Déclarations logiques Il est utilisé pour combiner des recherches dans une instruction logique
Recherches de proximité Il est utilisé pour rechercher des termes à proximité de caractères spéci
Maintenant, dans ce didacticiel Kibana, découvrons les fonctionnalités importantes de
Kibana :

Caractéristiques de Kinbana :

 Puissant tableau de bord frontal capable de visualiser les informations indexées du


cluster élastique
 Permet la recherche en temps réel d'informations indexées
 Vous pouvez rechercher, afficher et interagir avec les données stockées dans
Elasticsearch
 Exécutez des requêtes sur les données et visualisez les résultats dans des graphiques,
des tableaux et des cartes
 Tableau de bord configurable pour découper et découper les journaux logstash dans
elasticsearch
 Capable de fournir des données historiques sous forme de graphiques, de tableaux, etc.
 Tableaux de bord en temps réel facilement configurables
 Kibana ElasticSearch permet la recherche en temps réel d'informations indexées

Avantages et inconvénients de Kinbana

 Visualisation facile
 Entièrement intégré à Elasticsearch
 Outil de visualisation
 Offre des capacités d'analyse, de création de graphiques, de synthèse et de débogage
en temps réel
 Fournit une interface intuitive et conviviale
 Permet le partage d'instantanés des journaux recherchés
 Permet de sauvegarder le tableau de bord et de gérer plusieurs tableaux de bord

Log Analysis
Dans les infrastructures d'environnement basées sur le cloud, les performances et l'isolement
sont très importants. Les performances des machines virtuelles dans le cloud peuvent varier
en fonction des charges spécifiques, des environnements et du nombre d'utilisateurs actifs
dans le système. Par conséquent, la fiabilité et la défaillance des nœuds peuvent devenir un
problème important.

La plate-forme de gestion des journaux peut surveiller tous les problèmes susmentionnés ainsi
que traiter les journaux du système d'exploitation, NGINX, le journal du serveur IIS pour
l'analyse du trafic Web, les journaux des applications et les journaux sur AWS (services Web
Amazon).

La gestion des journaux aide les ingénieurs DevOps et les administrateurs système à prendre
de meilleures décisions commerciales. Par conséquent, l'analyse des journaux via Elastic
Stack ou des outils similaires est importante.

ELK contre Splunk


ELK Splunk
Elk est un outil open source Splunk est un outil commercial.
La pile Elk n'offre pas la portabilité Solaris à cause de
Splunk offre la portabilité Solaris.
Kibana.
La vitesse de traitement est strictement limitée. Offre des processus précis et rapides.
ELK est une pile technologique créée avec la Splunk est un outil propriétaire. Il fournit à la fois
combinaison Elastic Search-Logstash-Kibana. des solutions sur site et dans le cloud.
Dans ELK Searching, Analysis & Visualization ne sera Splunk est un progiciel complet de gestion des
possible qu'après la configuration de la pile ELK. données à votre disposition.
L'outil ELK ne prend pas en charge l'intégration avec Splunk est un outil utile pour configurer des
d'autres outils. intégrations avec d'autres outils.

Pourquoi la suite ELK est-elle si importante ?

La suite ELK répond à un besoin dans le domaine de l'analytique des journaux. À mesure que
votre infrastructure informatique migre vers des cloud publics, vous avez besoin d'une
solution de gestion et d'analytique des journaux pour surveiller cette infrastructure et traiter
tous les journaux de serveur, les journaux d'application et les flux de clics. La suite ELK
fournit une solution d'analyse des journaux simple mais robuste, qui permet à vos
développeurs et ingénieurs DevOps d'obtenir des informations précieuses sur le diagnostic des
pannes, les performances des applications et la surveillance de l'infrastructure, tout ceci pour
une fraction du prix normal.
Avantages et inconvénients de la pile ELK

Avantages

 ELK fonctionne mieux lorsque les journaux de diverses applications d'une entreprise
convergent vers une seule instance ELK

 Il fournit des informations étonnantes pour cette instance unique et élimine également
le besoin de se connecter à des centaines de sources de données de journal différentes.
 Installation rapide sur site
 Facile à déployer S'adapte verticalement et horizontalement
 Elastic propose une multitude de clients linguistiques, dont Ruby. Python. PHP,
Perl, .NET, Java et JavaScript, et plus
 Disponibilité de bibliothèques pour différents langages de programmation et de script

Désavantages

 Différents composants dans la pile peuvent devenir difficiles à gérer lorsque vous
passez à une configuration complexe
 Il n'y a rien de tel que les essais et les erreurs. Ainsi, plus vous en faites, plus vous
apprenez en cours de route

GRAYLOG :

Tous les systèmes, applications et logiciels génèrent des informations liées à leur


comportement, qui sont stockées dans des fichiers appelés journaux ou logs. 
Ces journaux doivent être constamment surveillés pour assurer le bon fonctionnement du
système en question et prévenir des erreurs ou des risques de sécurité.
Toutefois, les architectures informatiques sont de plus en plus complexes, avec un nombre
croissant d’éléments qui génèrent pour la majeure partie des fichiers logs.
Ces derniers sont souvent dispersés sur plusieurs serveurs et, à mesure que le volume de
données augmente, leur gestion devient de plus en plus complexe.
Pour remédier aux challenges que peuvent présenter les ces logs, vous pouvez compter
sur Graylog..

Graylog est un puissant outil open source pour la centralisation et le management de


grandes quantités de données de logs de sources différentes.

Graylog est basé sur Elasticsearch, MongoDB et Scala. Il se compose d’un serveur


principal, qui reçoit les données de ses clients installés sur différents serveurs, ainsi
qu’une interface web, qui sert à visualiser les données collectées par le serveur.
En plus du management des logs, Graylog est également efficace pour travailler avec des
chaînes de caractères brutes (syslog), qu’il est capable d’analyse pour en faire des données
structurées.
Il permet également d’effectuer des recherches personnalisées avancées dans les journaux à
l’aide de requêtes structurées.
En d’autres termes, lorsqu’il est correctement intégré à une application ou un système,
Graylog aide les ingénieurs à analyser le comportement du système dans le plus grand
détail.

Pourquoi utiliser Graylog ?


Graylog n’est pas le seul logiciel de centralisation et gestion des logs, mais il présente un
ensemble intéressant d’avantages qui font de lui une solution particulièrement attrayante :

 Graylog est un logiciel gratuit et open source.

 Il dispose d’une fonctionnalité d’alertes qui vous avertit en temps réel des


problèmes et anomalies qui méritent votre attention.

 Il offre des informations détaillées quant au contexte des erreurs, ce qui permet aux


ingénieurs de les comprendre plus rapidement et les résoudre plus efficacement.

 L’outil possède une fonctionnalité de recherche très puissante, ce qui vous permet


de trouver facilement et avec plus de précision ce que vous cherchez, même si vous ne
disposez pas de grandes quantités de data de logs.

 Graylog offre une fonctionnalité d’archivage, de sorte que tout ce qui a plus de 30


jours pourra être stocké sur un support spécifique et réimporté dans Graylog lorsqu’un tel
besoin apparaît. Exemple : lorsque les administrateurs système ont besoin d’analyser un
évènement passé.

Graylog VS ELK
Tableau de comparaison Graylog vs ELK
Discutons de la meilleure comparaison entre Graylog et ELK :

Graylog ELK

N'accepte pas les fichiers Syslog. Les données ELK prend en charge la majorité des types de

doivent être envoyées directement. données comme json, etc. Des plugins tiers
peuvent être utilisés pour la conversion de

données.

Développé exclusivement pour la gestion et La pile ELK prend en charge la gestion et l'analyse

l'analyse des journaux. des journaux ainsi que ses autres

fonctionnalités. C'est une pile polyvalente.

Graylog est très puissant en ce qui concerne le Logstash, une partie de la pile ELK qui effectue le

traitement des journaux. traitement, n'est pas aussi rapide que Graylog et a

des problèmes lorsqu'il y a un trafic élevé de

données.

Il est développé en java et prend en charge La pile ELK est également développée en Java et

GLEF (format de journal étendu Graylog) prend en charge le format json.

Prend en charge la journalisation UDP/GLEF en Prend en charge l'analyse de recherche de requêtes

temps réel ainsi que la recherche intuitive. en texte intégral avec la recherche élastique.

Utilise la syntaxe Lucene comme langage de Utilise Query DSL, basé sur Lucene comme

recherche. langage de recherche.

L'alerte intégrée est disponible. Et les alertes L'alerte intégrée n'est pas disponible, mais des

sont basées sur les données de flux. Des filtres plugins tiers comme X-pack peuvent être utilisés

d'alerte personnalisés peuvent être configurés pour envoyer des alertes aux utilisateurs.

dans l'interface Web Graylog.


Certaines organisations qui utilisent la pile ELK Certaines organisations qui utilisent Graylog sont

sont Appbrain, Hotjar, stockopedia, etc. Netflix, Cisco, Verizon et Linkedin.

Conclusion
Dans l'ensemble, les deux outils ont leurs propres avantages et inconvénients, comme nous

l'avons vu précédemment. La sélection d'un outil est entièrement basée sur le système et ses

exigences. Graylog est très puissant et son interface graphique est très conviviale, tandis que

la pile ELK est modulaire et flexible. C'est aux utilisateurs de décider ce qui leur convient le

mieux. Il existe des applications hybrides dans lesquelles les deux peuvent être utilisées.

Vous aimerez peut-être aussi