Monitoring Python with Instana

Stan ♥️ Python

Introducing Instana Python Monitoring

The move to microservices is continuing its march across organizations and technologies. Meanwhile, Python is still a favorite language for creating critucal applications. Python’s speed and versatility allow for greater portability in the new container world, but also bring a new set of challenges. New packages are being developed daily that further the development and deployment of more and more Python-based microservice applications which comes on top of a well-established presence in many technical areas such as data science, finance, big data and the web.

That’s why we set out to deliver our monitoring capabilities for Python applications.

With this in mind, we are excited to announce that Instana now provides insight into both larger legacy Python applications and newer microservices-based Python applications with the Instana Python sensor that is open source on GitHub.

The sensor provides runtime monitoring and distributed tracing for Python applications. Installation is simple, and the data extracted is invaluable for those running and managing Python applications in production.

No Touch Metrics & Tracing

Having to write code to enable monitoring of your applications is a dying relic from older historical APM vendors. One of Instana’s key product goals is to provide automatic discovery of applications, map interdependencies between those applications and to continuously monitor KPIs.

All this done automatically – and all to provide 3 second turn-around to insights and actionable data to work with.

In this spirit of no-touch monitoring of metrics & tracing, after the Instana Python package is installed, it can be activated by simply setting a single environment variable for your application. During the Beta program, we support Django 1.9+ & Flask applications. If you want only runtime metrics for any type of running Python process, we support that too.

Instana Python Monitoring Popup

Once initialized, the monitored Python process is then automatically mapped into the Instana dependency model, our Dynamic Graph and from there, runtime metrics are reported within 3 seconds:

Instana Python Monitoring Dashboard

Instana implements the concept of distributed tracing so you can see the larger picture of your entire application. Calls into other microservices and applications for any of the other supported languages are traced and dependencies between components are automatically mapped and presented in your dashboard.

This information is then fed into to Instana’s Service Quality Engine where entities, services and connections are discovered, mapped and monitored automatically.

Instana Python Monitoring Service Map

Latency spike? Service outage? Stan, our friendly neighborhood AI-powered DevOps assistant, provides you immediate benefits from it’s always on pattern recognition and variation learning engine. Stan automatically identifies patterns, reports changes, issues and incidents with a complete evolutionary log:

Instana Python Monitoring Incident Report

More Python Monitoring with OpenTracing

Across most of our supported languages, Instana implements support for OpenTracing: a distributed tracing standard that simplifies interoperability between instrumented apps. Our Python sensor follows in this effort.

The Python sensor supports the OpenTracing APIs and custom OpenTracing calls can be optionally added to your microservice to provide additional or new insights into the internal tasks of your application.

Instana Python Monitoring Stan Loves Python

With our proud introduction of the Instana Python sensor, we now support nine languages and 60+ technologies & integrations.