Dependencies:
- installed ElasticSearch, Kibana and APM, Mac instructions: https://github.com/elastic/homebrew-tap
- installed minikube
- installed kubectl
- installed ansible in a virtual env
python3 -m venv venv
source venv/bin/active
pip install -r requirements.txt
This project:
- Starts Elastic infrastructure
- Configure ansible and python
- run apm ansible test playbooks
- sets up minikube and a java app with apm enabled
python setup.py
python test-kube.py
python test.py
python tear-down.py
Generate Traffic for Java App
python python3 java_app/generate_traffic.py http://[cluster ip]:30001
Apply this on your apm_transaction index and index template - your indexes may have different name
PUT apm*/_mapping
{
"runtime": {
"labels.manual_effort": {
"type":"long"
}
}
}
PUT _template/apm_label_override
{
"index_patterns": ["apm*"],
"order": 99,
"mappings": {
"runtime": {
"labels.manual_effort": {
"type":"long"
}
}
}
}
dashboard.ndjson
- capture metrics e.g. business unit - manual effort ect.
- develop insightful dashbboards
- kubernetes feature gates: --feature-gates=EphemeralContainers=true