PA to ElasticSearch coupler

pip install ncc_pa_elasticsearch==0.0.7


NCC PA Elasticsearch Coupler


This is a little poller that will index Performance Analyser data into ElasticSearch so it can be filtered and reported on later.


The base system needs to have Python3.5+ installed. Using virtualenv or venv is recommended. The following dependencies are fetched as part of the installation:

  • elasticsearch
  • filelock
  • urllib3
  • ncc_paapi


System install

To install the coupler system wide, follow the pypi method without creating a venv. Note that you may need to run pip as root (or with sudo).

To create a venv, proceed like so:

python3 -m venv venv
source venv/bin/activate

(This does not work with the fish shell).

From Pypi

pip install ncc_pa_elasticsearch

From source

Change to the coupler's folder. Then install it like so:

pip install .

Docker install

You can use the Dockerfile in this repository to build an image that runs the Coupler. You'll need to follow the configuration steps described below to create a config.ini file in the same directory as the Dockerfile.


docker build -t pa-es-coupler .
docker run --rm pa-es-coupler:latest

The destination Elasticsearch instance is expected to be running when you start the container.


You will need to configure how to access the elasticsearch server and the PA API. Copy the file config-example.ini to config.ini and follow the commented instructions to configure access to your services.