|
||
---|---|---|
.github | ||
contrib | ||
internal | ||
.gitignore | ||
.goreleaser.yml | ||
collector.go | ||
collector_test.go | ||
correspondent.go | ||
correspondent_test.go | ||
documenttype.go | ||
documenttype_test.go | ||
go.mod | ||
go.sum | ||
LICENSE | ||
log.go | ||
log_test.go | ||
main.go | ||
multicollector.go | ||
README.md | ||
storagepath.go | ||
storagepath_test.go | ||
tag.go | ||
tag_test.go | ||
task.go | ||
task_test.go |
Paperless-ngx metrics for Prometheus
This repository hosts a Prometheus metrics exporter for Paperless-ngx, a document management system transforming physical documents into a searchable online archive. The exporter relies on Paperless' REST API.
An implementation using the API was chosen to provide the same perspective as web browsers.
Usage
prometheus-paperless-exporter
listens on TCP port 8081 by default. To listen on
another address use the -web.listen-address
flag (e.g.
-web.listen-address=127.0.0.1:3000
).
TLS and HTTP basic authentication is supported through the Prometheus exporter
toolkit. A configuration file can be passed to the -web.config
flag
(documentation).
See the --help
output for more flags.
Permissions
Since late 2023 Paperless-ngx supports object permissions. The metrics user requires view permissions on the following types:
- Admin (for logs)
- Correspondent
- Document
- DocumentType
- PaperlessTask
- StoragePath
- Tag
Installation
Pre-built binaries are provided for all releases:
- Binary archives (
.tar.gz
) - Debian/Ubuntu (
.deb
) - RHEL/Fedora (
.rpm
) - Microsoft Windows (
.zip
)
Docker images via GitHub's container registry:
docker pull ghcr.io/hansmi/prometheus-paperless-exporter
With the source being available it's also possible to produce custom builds directly using Go or GoReleaser.
Docker Compose
An example configuration for Docker Compose is available in
contrib/docker-compose
:
env --chdir contrib/docker-compose docker-compose up