15
Monitoring with Graylog A modern approach to monitoring? Christoph Petrausch Karlsruhe, 06.11.2015

Monitoring with Graylog - a modern approach to monitoring?

Embed Size (px)

Citation preview

Page 1: Monitoring with Graylog - a modern approach to monitoring?

Monitoring with Graylog

A modern approach to monitoring?

Christoph Petrausch

Karlsruhe, 06.11.2015

Page 2: Monitoring with Graylog - a modern approach to monitoring?

Christoph Petrausch

Systems Engineer @ inovex GmbH

〉 Platform Engineering

〉 System Automation & Development (DevOps)

〉 Blog, Slides & Videos at inovex.de

2

Page 3: Monitoring with Graylog - a modern approach to monitoring?

1. Why Graylog?

2. What is Graylog?

3. Demo

4. Conclusions

5. Q&A

Agenda

3

Page 4: Monitoring with Graylog - a modern approach to monitoring?

Existing monitoring solutions (Nagios, Icinga, Zabbix) have problems:

〉 Some of them lack of APIs

〉 Integration with configuration management is very time-

consuming

〉 Do not scale well

〉 High Availability is not considered by the System Architecture

Why Graylog?

4

Page 5: Monitoring with Graylog - a modern approach to monitoring?

〉 Open Source Project, GPLv3

〉 Project started in 2009

〉 Company Graylog Inc. is the main developer

〉 Around a dozen contributors on GitHub

Project Overview

5

Page 6: Monitoring with Graylog - a modern approach to monitoring?

〉 Receives messages from multiple input protocols

〉 GELF via HTTP/UDP/TCP, Syslog, Apache Kafka, ….

〉 Assigns messages to streams

〉 Triggers user-defined alerts per stream

〉 Stores messages in ElasticSearch for graphing

〉 Routes messages to different outputs based on streams

〉 Provides search and graphing capabilities for stored messages

〉 Uses MongoDB to store metadata and alerts

What does Graylog?

6

Page 7: Monitoring with Graylog - a modern approach to monitoring?

〉 Compressed or uncompressed JSON string

〉 JSON Hash with mandatory fields:

〉 host, version, short_message, full_message, timestamp, level

〉 Additional custom fields start with an underscore

GELF (Graylog Extended Log Format)

7

Page 8: Monitoring with Graylog - a modern approach to monitoring?

Architecture

http://docs.graylog.org/en/1.2/pages/architecture.html#bigger-production-setup 8

Page 9: Monitoring with Graylog - a modern approach to monitoring?

Message Processing

http://docs.graylog.org/en/1.2/pages/streams.html#how-are-streams-processed-internally 9

Page 10: Monitoring with Graylog - a modern approach to monitoring?

〉 Are written in Java

〉 Nearly all parts of Graylog are extensible

〉 Inputs

〉 Outputs

〉 Services

〉 Alarm callbacks

〉 Filters

〉 REST API resources

〉 Periodical tasks

Plugins

10

Page 11: Monitoring with Graylog - a modern approach to monitoring?

Hands on: Demo

Page 12: Monitoring with Graylog - a modern approach to monitoring?

Overview

Collectd Logstash Graylog

OpsGenie

ElasticSearch

Logstorage

Simple Python Script

Alarming

Page 13: Monitoring with Graylog - a modern approach to monitoring?

〉 Only one index for all messages

〉 Same named fields have to have the same semantics

〉 Rudimentary graphs

〉 No interactive zooming

〉 Rudimentary alarming configuration

〉 High configuration effort to get “per-host” monitoring

〉 But you can do it via a REST-API!

Conclusion

13

Page 14: Monitoring with Graylog - a modern approach to monitoring?

Q&A

Page 15: Monitoring with Graylog - a modern approach to monitoring?

Thank You!

Christoph Petrausch

IT Engineering & Operations

inovex GmbH

Ludwig-Erhard-Allee 6

76131 Karlsruhe (GER)

[email protected]

CC BY-NC-ND inovex.de