Plugin to implement instrumentation of elastic apm on a bottle server.
Project description
Bottle Elastic APM
Simple plugin to use ELK with APM server for your bottle application
Using default_app
default_app()
uses AppStack, so you only need to install it once.
from bottle import default_app, run
from bottle_elastic_apm import ElasticAPM, make_apm_client
ELK_CONFIG = {
'service_name': 'my-app',
}
app = default_app()
app2 = default_app()
apm_client = make_apm_client(**ELK_CONFIG) # avoid multi client instances
app.install(ElasticAPM(client=apm_client))
@app.get('/')
def index():
return 'Hello world!'
@app2.get('/2')
def index2():
return 'Hello world!'
run(app)
Using Bottle()
Bottle()
don't uses AppStack, so you need to install on all of them.
from bottle import Bottle, run
from bottle_elastic_apm import ElasticAPM, make_apm_client
ELK_CONFIG = {
'service_name': 'my-app',
}
app = Bottle()
app2 = Bottle()
app.mount('v2', app2)
apm_client = make_apm_client(**ELK_CONFIG) # avoid multi client instances
app.install(ElasticAPM(client=apm_client))
app2.install(ElasticAPM(client=apm_client))
@app.get('/')
def index():
return 'Hello world!'
@app2.get('/2')
def index2():
return 'Hello world!'
run(app)
Avoid capture specific errors
from bottle import default_app
from bottle_elastic_apm import ElasticAPM, make_apm_client
ELK_CONFIG = {
'service_name': 'my-app',
}
app = default_app()
apm_client = make_apm_client(**ELK_CONFIG) # avoid multi client instances
app.install(ElasticAPM(client=apm_client, avoided_errors={(401, 'JWT: Signature has expired',)}))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for bottle_elastic_apm-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2cf9207283a89189443b10c08f3e254bad1374ef43597112fc42e47920b8db0 |
|
MD5 | 6461f2c63b4d643bb6580f39b00f6ac7 |
|
BLAKE2b-256 | a0b79bc5b4a9f19b2fd2c45a9b4b6c5868d748d93dcad3305dc6c0c25ac0a421 |