Exposes dag and task based metrics from Airflow to a Prometheus compatible endpoint.
- Airflow: airflow1.8 - airflow1.10
- Python: python2, python3
- DataBase: postgresql, mysql
Install project requirements:
pip3 install prometheus_client
Switch to the root of your Airflow project.
git clone https://github.com/epoch8/airflow-exporter plugins/prometheus_exporter
That's it. You're done.
If you use airflow in docker you can simply modify your Dockerfile like this:
RUN cd ${AIRFLOW_HOME}/plugins && \
wget https://github.com/epoch8/airflow-exporter/archive/${AIRFLOW_EXPORTER_VERSION}.tar.gz -O airflow-exporter-${AIRFLOW_EXPORTER_VERSION}.tar.gz && \
tar zxf airflow-exporter-${AIRFLOW_EXPORTER_VERSION}.tar.gz
Metrics will be available at
http://<your_airflow_host_and_port>/admin/metrics/
Labels:
dag_id
task_id
owner
status
Value: number of tasks in specific status.
Labels:
dag_id
owner
status
Value: number of dags in specific status.
Labels:
dag_id
: unique identifier for a given DAGrun_id
: unique identifier created each time a DAG is run
Value: duration in seconds that a DAG Run has been running for. This metric is not available for DAGs that have already completed.
Distributed under the BSD license. See LICENSE for more information.