📰 Title: Monitoring a Go Application.
📃 What: How to use Go tooling to monitor a Go application.
🎙 Who: Aurélien Rainone
📍 Where: Student Hotel
🗓 When: Wednesday, December 11th, from 7:00 PM to 11:00 PM
💰 Cost: Free entry, aperitivo included
Session Abstract
How can I know if my Go program can run faster? How will it perform under stress in production?
During the evening, we will collect performance data from a real application and use tools to visualize and analyze it.
The goal of this workshop is to learn how to monitor your Go application to measure its performance, identify weaknesses, and optimize it. To achieve this, we will use both Go’s standard tools and the open-source Prometheus toolkit.
In the first part, we will see how to monitor a command line application using Go’s tracer and profiler. In the second part, we will add metrics to an HTTP server and use Prometheus (a time series database) to visualize them.
The Speaker
Aurélien Rainone
He has been developing software for over 15 years in C++, and Python, and for the last 5 years, also in Go. At Develer, he uses Go to develop software in the embedded field, where performance is crucial.
During the evening, the following topics will be covered:
- Introduction to monitoring in Go
- Tools for profiling a command line program
- The Prometheus toolkit and monitoring concepts
- The different types of metrics available
- Using Prometheus to monitor an HTTP server in real-time
Session Objectives:
- Provide basic knowledge for evaluating the performance of your Go application.
Participation Requirements:
- Basic knowledge of Go
- Basic knowledge of Git
- Basic knowledge of the Linux shell
- Basic knowledge of Docker
What You Need:
To access the practical part, you need your computer with the following installed:
Go 1.13 (https://golang.org/dl/)
Docker (https://docs.docker.com/v17.09/)
docker-compose (https://docs.docker.com/compose/install/)
Git
Clone the project repository: (https://github.com/arl/golab-2019)