Introducing Instana Python Monitoring
Editor’s Note: Instana’s Python monitoring is currently in Beta. Please see the links at the end of the post for access to the Instana Python Sensor.
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 (now in Beta) 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.
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 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.
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:
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.
With our proud introduction of the Instana Python sensor, we now support nine languages and 60+ technologies & integrations.