在监控你的服务之前,你需要通过 Prometheus 客户端库向代码中添加检测(instrumentation)。这些库实现了 Prometheus 的指标类型。
选择与你的应用程序编写语言相匹配的 Prometheus 客户端库。这样你就可以通过应用程序实例上的 HTTP 端点定义和暴露内部指标:
非官方的第三方客户端库:
- Bash
- C
- C++
- Common Lisp
- Dart
- Delphi
- Elixir
- Erlang
- Haskell
- Julia
- Lua(用于 Nginx)
- Lua(用于 Tarantool)
- .NET / C#
- Node.js
- OCaml
- Perl
- PHP
- R
- Swift
当 Prometheus 抓取你实例的 HTTP 端点时,客户端库会将所有被跟踪指标的当前状态发送到服务器。
如果你的语言没有可用的客户端库,或者你想避免引入依赖,你也可以自行实现一种受支持的暴露格式来暴露指标。
在实现新的 Prometheus 客户端库时,请遵循客户端库编写指南。请注意,该文档仍在完善中。也请考虑咨询开发者邮件列表。我们很乐意就如何使你的库尽可能实用和一致提供建议。