SlideShare a Scribd company logo
Elastic Stack @ Swisscom Application Cloud
Swisscom (Schweiz) AG
Bremgartner Lucas
13.06.2017
C1 - Public
> Introduction
> What is Swisscom Application Cloud / What is the Elastic Stack
> Use of Elastic Stack @ Swisscom Application Cloud
> Process Logs with Logstash @ Swisscom Application Cloud
> Testing growing Logstash Configurations
2Agenda
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
08.06.17
Home of Cloud Native Applications
08.06.17
4
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
What is Swisscom Application Cloud / What is the Elastic Stack
Kibana
User Interface
ElasticsearchStore, Index,
& Analyze
Ingest
Logstash Beats
Elastic Stack
Swisscom
Developer Portal
5
developer.swisscom.com
www.mycloud.ch
Internal AppCloud
iAPC
Use Cases
> Lucas Bremgartner, Cloud Developer @ Swisscom Application Cloud
Quick notes:
> Elasticsearch user since version 0.9.x.
> My current «goto» programming language is Go
Open Source:
> Logstash Community Maintainer
> Contributor to logstash-filter-verifier (LFV)
> Maintainer of pigeon (PEG grammar parser generator for Go)
> Author of logstash-config (parser for Logstash configuration, written in Go)
08.06.17
6
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Introduction
> ELK as a Service
– Available in marketplace, containing Elasticsearch, Logstash and Kibana
– Intended use-case: collect logs from apps running in Application Cloud and visualize them
with Kibana
> Elasticsearch Enterprise
– Currently under development
– Intended use-case: scalable Elasticsearch clusters as a service
– Open for all Elasticsearch use cases (classical full-text search, log management, geo
location search, etc.)
> Elastic Stack for Log Management of the Infrastructure
– Classical pipeline with Filebeat, Logstash, Elasticsearch and Kibana
08.06.17
7
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Use of Elastic Stack @ Swisscom Application Cloud
14.06.2017
8
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Process Logs with Logstash
@ Swisscom Application Cloud
> Application instances in Cloud Foundry are ephemeral, storing logs on local disk is not a good
idea
> With multiple instances of the app running in parallel, an aggregated log stream is needed
> The 12 factor apps methodology defines for log data:
– «A twelve-factor app never concerns itself with routing or storage of its output stream. It
should not attempt to write to or manage logfiles. Instead, each running process writes its
event stream, unbuffered, to stdout»
> Cloud Foundry collects and ships the log events of the application and makes the log events
available through the API: cf logs <app>
> Cloud Foundry also allow to stream the logs to a customer provided service (syslog or https)
08.06.17
9
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Application Logs in Swisscom Application Cloud
App deployed by
Customer
App deployed by
Customer
Service by
Swisscom
AppCloud
05.09.16
10
BremgartnerLucas,ENT-NTC-PHC-PFD-ELR
ELKEnterprise.pptxC2-Internal
Stream Application Logs in Cloud Foundry
Logstash KibanaElasticsearch
ES Dashboards
(e.g. Cerebro,
Kopf)
Logstash
Logstash
House-
Keeping
(e.g. curator)
App
App logs to stdout,
CF log facility forwards
via customer provided
service to Logstash
App
App
> Buildpacks provide framework and runtime support for your applications.
> Buildpacks typically examine user-provided artifacts to determine what dependencies to
download and how to configure applications to communicate with bound services.
> This is done by three entrypoints:
– bin/detect: determines whether or not to apply the buildpack to an app.
– bin/compile: builds a droplet by packaging the app dependencies, assuring that the app
has all the necessary components needed to run.
– bin/release: provides feedback metadata to Cloud Foundry indicating how the app
should be executed.
08.06.17
11
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
What is a Cloud Foundry Buildpack
08.06.17
12
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Demo
14.06.2017
13
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Testing growing Logstash Configurations
Elasticsearch KibanaRabbitMQLogstash
(Shipper to
RabbitMQ)
Filebeat on
Edge Nodes
08.06.17
14
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Log Management @ Swisscom Application Cloud
Logstash
(Filter)
> Every application/service/daemon has its own log format, which needs to be tackled with a
specific set of Logstash filters.
> While adding more and more log formats, the complexity increases and changes to the
configuration become more and more delicate.
> With new software versions (lifecycle), also changed log patterns may occur, which need to be
processed in parallel to the old one.
> Integrate the testing of the Logstash configuration into the CI pipeline.
> Additionally to the Logstash configuration, also the Elasticsearch mapping needs to be
maintained.
> The Elasticsearch mapping could become a quite large (JSON file), which is a pain to update
(unhandy, error prone, etc.).
> Undocumented Elasticsearch mappings are harder to understand and to maintain (especially if
this is not done on a regular bases)
08.06.17
15
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Challenges
> Logstash is an open source, server-side data processing pipeline
that ingests data from a multitude of sources simultaneously,
transforms it, and then sends it to your favorite “stash.”
> Logstash follows the classical input–process–output (IPO) pattern,
the process stage is called «filter».
> A long list of different input, filter and output plugins is available,
which allow to adopt Logstash to a wide variety of use cases.
> A Logstash configuration is like a program which is applied to
every log event.
08.06.17
16
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Logstash
> LFV provides unit test kind of functionality for Logstash filter configurations
> Run test input against a given Logstash configuration and compare the result with the
expected value
08.06.17
17
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Logstash Filter Verifier
Logstash
filter
config
LFV Logstash
Test
cases
Kudos to @magnusbaeck for developing and maintaining Logstash Filter Verifier (LFV)
«If you get something wrong (… in the Logstash config …) you might have millions of
incorrectly parsed events before you realize your mistake. » – Magnus Bäck
Logstash Filter Verifier testsuite file:
{
"fields": {},
"codec": "line"
"ignore": [ "@version", "host" ],
"testcases": [ {
"input": [
"2017/06/12 08:12:58 WARN message e361827a-990e-
4237-8ea3-047f292f1d14 (1534 bytes) from <mind-blowing-
musa@dagger.com> to <epic_williams@centaur.com> could not
be sent, will retry"
],
"expected": [ {
"@timestamp": "2017-06-12T08:12:58.000Z",
"severity": "WARN",
"from": "mind-blowing-musa@dagger.com",
"to": "epic_williams@centaur.com",
"message": "could not be sent, will retry",
"size": 1534
} ]
} ] }
08.06.17
18
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Example
Additional fields, provided by the
source or added by the input plugin
Codec to decode input data (usually
one of line or json_lines)
Fields to be ignored, when the result
is compared
Testcases:
• provided input
• expected log event provided by Logstash
08.06.17
19
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Demo
14.06.2017
20
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Thanks & Questions?
Software & Tools:
> Logstash Buildpack for Swisscom Application Cloud
https://github.com/swisscom/cf-buildpack-logstash
> Kibana Buildpack for Swisscom Application Cloud
https://github.com/swisscom/cf-buildpack-kibana
> Logstash Filter Verifier (LFV)
https://github.com/magnusbaeck/logstash-filter-verifier
> Logstash Config Check
https://github.com/breml/logstash-config
Additional Links:
> 12 Factor Apps: https://12factor.net/
> Grok Debugger: https://grokdebug.herokuapp.com/
> ./jq: https://stedolan.github.io/jq/
> jsondiff: https://github.com/yudai/gojsondiff/
> dockerize: https://github.com/jwilder/dockerize
08.06.17
21
BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR
ElasticStack@SwisscomAppCloud.pptxC1-
Public
Links

More Related Content

PDF
ОЛЕКСАНДР ЛИПКО «Graceful Shutdown Node.js + k8s» Online WDDay 2021
PDF
OSDC 2018 | Hardware-level data-center monitoring with Prometheus by Conrad H...
PDF
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
PDF
IBM iSeries Terminal Based Performance Testing with Rational Performance Tester
PDF
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
PDF
Running I/O intensive workloads on Kubernetes, by Nati Shalom
PDF
Servlet vs Reactive Stacks in 5 Use Cases
PDF
Challenges in a Microservices Age: Monitoring, Logging and Tracing on Red Hat...
ОЛЕКСАНДР ЛИПКО «Graceful Shutdown Node.js + k8s» Online WDDay 2021
OSDC 2018 | Hardware-level data-center monitoring with Prometheus by Conrad H...
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
IBM iSeries Terminal Based Performance Testing with Rational Performance Tester
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
Running I/O intensive workloads on Kubernetes, by Nati Shalom
Servlet vs Reactive Stacks in 5 Use Cases
Challenges in a Microservices Age: Monitoring, Logging and Tracing on Red Hat...

What's hot (20)

PDF
19. Cloud Native Computing - Kubernetes - Bratislava - Databases in K8s world
PDF
Using kubernetes to lose your fear of using containers
PPTX
OpenShift Introduction
PPTX
Introduction to openshift
PDF
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
PDF
Open shift 4 infra deep dive
PDF
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...
PDF
Elk for applications on k8s
PDF
Cwin16 tls-a micro-service deployment - v1.0
PDF
MongoDB.local DC 2018: MongoDB Ops Manager + Kubernetes
PDF
WTF Do We Need a Service Mesh?
PDF
Istio: Using nginMesh as the service proxy
PPTX
Poc Exadata X7-2 OVM
PPTX
Postgre sql best_practices
PDF
MesosCon 2016 - minimesos, the experimentation and testing tool for Apache Mesos
PDF
2013 linux days final
PDF
Kubernetes Ingress 101
PDF
OpenShift 4, the smarter Kubernetes platform
PDF
Microservices with Spring 5 Webflux - jProfessionals
PDF
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...
19. Cloud Native Computing - Kubernetes - Bratislava - Databases in K8s world
Using kubernetes to lose your fear of using containers
OpenShift Introduction
Introduction to openshift
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
Open shift 4 infra deep dive
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...
Elk for applications on k8s
Cwin16 tls-a micro-service deployment - v1.0
MongoDB.local DC 2018: MongoDB Ops Manager + Kubernetes
WTF Do We Need a Service Mesh?
Istio: Using nginMesh as the service proxy
Poc Exadata X7-2 OVM
Postgre sql best_practices
MesosCon 2016 - minimesos, the experimentation and testing tool for Apache Mesos
2013 linux days final
Kubernetes Ingress 101
OpenShift 4, the smarter Kubernetes platform
Microservices with Spring 5 Webflux - jProfessionals
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...
Ad

Similar to Elastic Stack @ Swisscom Application Cloud (20)

KEY
London devops logging
PPTX
Centralized log-management-with-elastic-stack
PDF
Log analysis with the elk stack
PPTX
Elastic Stack Introduction
PPTX
Centralized Logging System Using ELK Stack
PDF
Prototyping applications with heroku and elasticsearch
PPTX
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
PDF
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
PPT
Heroku for-team-collaboration
PPT
Heroku for team collaboration
PDF
Distributed Logging System Using Elasticsearch Logstash,Beat,Kibana Stack and...
PDF
Docker Logging and analysing with Elastic Stack
PDF
Docker Logging and analysing with Elastic Stack - Jakub Hajek
PPTX
Serhii Matynenko "How to Deal with Logs, Migrating from Monolith Architecture...
PDF
ELK stack introduction
PDF
Présentation ELK/SIEM et démo Wazuh
PDF
Security Monitoring for big Infrastructures without a Million Dollar budget
PDF
OutSystsems User Group Netherlands September 2024.pdf
DOCX
ESB APPLICTAION IMPROVEMENT -2024 - this
PDF
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
London devops logging
Centralized log-management-with-elastic-stack
Log analysis with the elk stack
Elastic Stack Introduction
Centralized Logging System Using ELK Stack
Prototyping applications with heroku and elasticsearch
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar ...
Heroku for-team-collaboration
Heroku for team collaboration
Distributed Logging System Using Elasticsearch Logstash,Beat,Kibana Stack and...
Docker Logging and analysing with Elastic Stack
Docker Logging and analysing with Elastic Stack - Jakub Hajek
Serhii Matynenko "How to Deal with Logs, Migrating from Monolith Architecture...
ELK stack introduction
Présentation ELK/SIEM et démo Wazuh
Security Monitoring for big Infrastructures without a Million Dollar budget
OutSystsems User Group Netherlands September 2024.pdf
ESB APPLICTAION IMPROVEMENT -2024 - this
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
Ad

Recently uploaded (20)

PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
KodekX | Application Modernization Development
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Cloud computing and distributed systems.
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
cuic standard and advanced reporting.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
Mobile App Security Testing_ A Comprehensive Guide.pdf
Electronic commerce courselecture one. Pdf
KodekX | Application Modernization Development
Dropbox Q2 2025 Financial Results & Investor Presentation
Review of recent advances in non-invasive hemoglobin estimation
Empathic Computing: Creating Shared Understanding
Cloud computing and distributed systems.
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
20250228 LYD VKU AI Blended-Learning.pptx
cuic standard and advanced reporting.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Spectral efficient network and resource selection model in 5G networks
Diabetes mellitus diagnosis method based random forest with bat algorithm
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
sap open course for s4hana steps from ECC to s4
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Per capita expenditure prediction using model stacking based on satellite ima...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?

Elastic Stack @ Swisscom Application Cloud

  • 1. Elastic Stack @ Swisscom Application Cloud Swisscom (Schweiz) AG Bremgartner Lucas 13.06.2017 C1 - Public
  • 2. > Introduction > What is Swisscom Application Cloud / What is the Elastic Stack > Use of Elastic Stack @ Swisscom Application Cloud > Process Logs with Logstash @ Swisscom Application Cloud > Testing growing Logstash Configurations 2Agenda BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public 08.06.17
  • 3. Home of Cloud Native Applications
  • 4. 08.06.17 4 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public What is Swisscom Application Cloud / What is the Elastic Stack Kibana User Interface ElasticsearchStore, Index, & Analyze Ingest Logstash Beats Elastic Stack Swisscom Developer Portal
  • 6. > Lucas Bremgartner, Cloud Developer @ Swisscom Application Cloud Quick notes: > Elasticsearch user since version 0.9.x. > My current «goto» programming language is Go Open Source: > Logstash Community Maintainer > Contributor to logstash-filter-verifier (LFV) > Maintainer of pigeon (PEG grammar parser generator for Go) > Author of logstash-config (parser for Logstash configuration, written in Go) 08.06.17 6 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Introduction
  • 7. > ELK as a Service – Available in marketplace, containing Elasticsearch, Logstash and Kibana – Intended use-case: collect logs from apps running in Application Cloud and visualize them with Kibana > Elasticsearch Enterprise – Currently under development – Intended use-case: scalable Elasticsearch clusters as a service – Open for all Elasticsearch use cases (classical full-text search, log management, geo location search, etc.) > Elastic Stack for Log Management of the Infrastructure – Classical pipeline with Filebeat, Logstash, Elasticsearch and Kibana 08.06.17 7 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Use of Elastic Stack @ Swisscom Application Cloud
  • 9. > Application instances in Cloud Foundry are ephemeral, storing logs on local disk is not a good idea > With multiple instances of the app running in parallel, an aggregated log stream is needed > The 12 factor apps methodology defines for log data: – «A twelve-factor app never concerns itself with routing or storage of its output stream. It should not attempt to write to or manage logfiles. Instead, each running process writes its event stream, unbuffered, to stdout» > Cloud Foundry collects and ships the log events of the application and makes the log events available through the API: cf logs <app> > Cloud Foundry also allow to stream the logs to a customer provided service (syslog or https) 08.06.17 9 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Application Logs in Swisscom Application Cloud
  • 10. App deployed by Customer App deployed by Customer Service by Swisscom AppCloud 05.09.16 10 BremgartnerLucas,ENT-NTC-PHC-PFD-ELR ELKEnterprise.pptxC2-Internal Stream Application Logs in Cloud Foundry Logstash KibanaElasticsearch ES Dashboards (e.g. Cerebro, Kopf) Logstash Logstash House- Keeping (e.g. curator) App App logs to stdout, CF log facility forwards via customer provided service to Logstash App App
  • 11. > Buildpacks provide framework and runtime support for your applications. > Buildpacks typically examine user-provided artifacts to determine what dependencies to download and how to configure applications to communicate with bound services. > This is done by three entrypoints: – bin/detect: determines whether or not to apply the buildpack to an app. – bin/compile: builds a droplet by packaging the app dependencies, assuring that the app has all the necessary components needed to run. – bin/release: provides feedback metadata to Cloud Foundry indicating how the app should be executed. 08.06.17 11 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public What is a Cloud Foundry Buildpack
  • 14. Elasticsearch KibanaRabbitMQLogstash (Shipper to RabbitMQ) Filebeat on Edge Nodes 08.06.17 14 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Log Management @ Swisscom Application Cloud Logstash (Filter)
  • 15. > Every application/service/daemon has its own log format, which needs to be tackled with a specific set of Logstash filters. > While adding more and more log formats, the complexity increases and changes to the configuration become more and more delicate. > With new software versions (lifecycle), also changed log patterns may occur, which need to be processed in parallel to the old one. > Integrate the testing of the Logstash configuration into the CI pipeline. > Additionally to the Logstash configuration, also the Elasticsearch mapping needs to be maintained. > The Elasticsearch mapping could become a quite large (JSON file), which is a pain to update (unhandy, error prone, etc.). > Undocumented Elasticsearch mappings are harder to understand and to maintain (especially if this is not done on a regular bases) 08.06.17 15 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Challenges
  • 16. > Logstash is an open source, server-side data processing pipeline that ingests data from a multitude of sources simultaneously, transforms it, and then sends it to your favorite “stash.” > Logstash follows the classical input–process–output (IPO) pattern, the process stage is called «filter». > A long list of different input, filter and output plugins is available, which allow to adopt Logstash to a wide variety of use cases. > A Logstash configuration is like a program which is applied to every log event. 08.06.17 16 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Logstash
  • 17. > LFV provides unit test kind of functionality for Logstash filter configurations > Run test input against a given Logstash configuration and compare the result with the expected value 08.06.17 17 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Logstash Filter Verifier Logstash filter config LFV Logstash Test cases Kudos to @magnusbaeck for developing and maintaining Logstash Filter Verifier (LFV) «If you get something wrong (… in the Logstash config …) you might have millions of incorrectly parsed events before you realize your mistake. » – Magnus Bäck
  • 18. Logstash Filter Verifier testsuite file: { "fields": {}, "codec": "line" "ignore": [ "@version", "host" ], "testcases": [ { "input": [ "2017/06/12 08:12:58 WARN message e361827a-990e- 4237-8ea3-047f292f1d14 (1534 bytes) from <mind-blowing- musa@dagger.com> to <epic_williams@centaur.com> could not be sent, will retry" ], "expected": [ { "@timestamp": "2017-06-12T08:12:58.000Z", "severity": "WARN", "from": "mind-blowing-musa@dagger.com", "to": "epic_williams@centaur.com", "message": "could not be sent, will retry", "size": 1534 } ] } ] } 08.06.17 18 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Example Additional fields, provided by the source or added by the input plugin Codec to decode input data (usually one of line or json_lines) Fields to be ignored, when the result is compared Testcases: • provided input • expected log event provided by Logstash
  • 21. Software & Tools: > Logstash Buildpack for Swisscom Application Cloud https://github.com/swisscom/cf-buildpack-logstash > Kibana Buildpack for Swisscom Application Cloud https://github.com/swisscom/cf-buildpack-kibana > Logstash Filter Verifier (LFV) https://github.com/magnusbaeck/logstash-filter-verifier > Logstash Config Check https://github.com/breml/logstash-config Additional Links: > 12 Factor Apps: https://12factor.net/ > Grok Debugger: https://grokdebug.herokuapp.com/ > ./jq: https://stedolan.github.io/jq/ > jsondiff: https://github.com/yudai/gojsondiff/ > dockerize: https://github.com/jwilder/dockerize 08.06.17 21 BremgartnerLucas,INI-DEV-DIG-TCL-PFD-ELR ElasticStack@SwisscomAppCloud.pptxC1- Public Links