PROMETHEUS-POSTFIX-EXPORTER(1)

πŸ’– prometheus-postfix-exporter πŸ’–

okay bestie, welcome to section 1 of the manual β€” this is PROMETHEUS-POSTFIX-EXPORTER, the whole page, and it's literally all about getting your Postfix metrics out there in Prometheus format. sit down, grab a strawberry πŸ“, we're doing this.


✨ NAME ✨

prometheus-postfix-exporter β€” a Prometheus exporter for Postfix metrics. that's the whole vibe. one job, done gorgeously. πŸ’…


🌸 SYNOPSIS 🌸

postfix_exporter [<flags>]

that's it. that's the whole thing. you run the binary, you hand it some flags, it goes to work. main character energy fr fr. πŸ‘‘


πŸ¦‹ DESCRIPTION πŸ¦‹

so like β€” it's a Prometheus metrics exporter for postfix. Postfix does its mail thing, this little icon translates all of that into metrics Prometheus can slurp up. no cap. ✨


πŸŽ€ OPTIONS πŸŽ€

every single flag, in order, nothing skipped, because we do not half-ass things around here:

  • -h, --help β€” shows you the context-sensitive help. and if that's not enough for you (valid, honestly), there's also --help-long and --help-man. go off. 🫢
  • --version β€” prints the application version. short, sweet, iconic.
  • --watchdog β€” use the watchdog to keep an eye on your log sources. it's giving protective. πŸ•
  • --web.systemd-socket β€” use systemd socket activation listeners instead of port listeners. Linux only, so don't try this on your Mac, bestie, it will not slay.
  • --web.listen-address=:9154 β€” the addresses where metrics and the web interface get exposed. it's repeatable if you want multiple addresses, so stack 'em. examples: :9100 or [::1]:9100 for http, and vsock://:9100 for vsock. yes ma'am. 🌈
  • --web.config.file β€” path to a config file that can enable TLS or authentication. the details live at: https://github.com/prometheus/exporter-toolkit/blob/master/docs/web-configuration.md β€” go read it, it's giving required reading. πŸ“š
  • --web.telemetry-path β€” the path under which metrics are exposed. you pick it.
  • --postfix.showq_path β€” the path where Postfix puts its showq socket. πŸ“
  • --postfix.showq_port=10025 β€” the TCP port where Postfix's showq service is listening. noted. πŸ’œ
  • --postfix.showq_network β€” the network type for Postfix's showq service.
  • --log.unsupported β€” logs all the unsupported lines. every last one. it's thorough, we respect it. πŸ™ˆ
  • --log.level=info β€” only log messages at the given severity or above. one of: [debug, info, warn, error]. pick your fighter.
  • --log.format=logfmt β€” the output format for log messages. one of: [logfmt, json].
  • --postfix.cleanup_service_label=cleanup β€” user-defined service label for the cleanup service. 🧼
  • --postfix.lmtp_service_label=lmtp β€” user-defined service label for the lmtp service.
  • --postfix.pipe_service_label=pipe β€” user-defined service label for the pipe service.
  • --postfix.qmgr_service_label=qmgr β€” user-defined service label for the qmgr service.
  • --postfix.smtp_service_label=smtp β€” user-defined service label for the smtp service.
  • --postfix.smtpd_service_label=smtpd β€” user-defined service label for the smtpd service.
  • --postfix.bounce_service_label=bounce β€” user-defined service label for the bounce service. πŸ€
  • --postfix.virtual_service_label=virtual β€” user-defined service label for the virtual service.
  • --docker.enable β€” read from Docker logs. you can set the environment variable DOCKER_HOST to change the address. more info at https://pkg.go.dev/github.com/docker/docker/client?tab=doc#NewEnvClient β€” yes, the whole URL, it's important, don't skip it. 🐳
  • --docker.container.id β€” the ID or name of the Postfix Docker container. give it the name, it'll find it.
  • --systemd.enable β€” read from the systemd journal instead of a log. journal girlies rise. πŸ““
  • --systemd.unit β€” the name of the Postfix systemd unit.
  • --systemd.slice β€” the name of the Postfix systemd slice. this overrides the systemd unit, so heads up.
  • --systemd.journal_path β€” the path to the systemd journal.
  • --postfix.logfile_path β€” the path where Postfix writes log entries. πŸ“‚
  • --postfix.logfile_must_exist β€” fail if the log file doesn't exist. it is not playing around, bestie β€” no file, no mercy.
  • --postfix.logfile_debug β€” enable debug logging for the log file. πŸ”
  • --postfix.logfile_poll β€” poll for file changes instead of using inotify. old school but it works. πŸ’€

okay so real talk: that --postfix.logfile_must_exist one? it will literally stop everything if the file's not there. just so you know. dramatic but honest. 😭

and that's the page, bestie!! πŸ¦‹ this is prometheus-postfix-exporter 0..., and the lovely humans stamped it February 2026. go forth, scrape your metrics, be the icon you were born to be. periodt. πŸ‘‘πŸ’–βœ¨

πŸ“¦ where this page comes from