应用容器的调试与监控
1. 在现有应用旁添加 Prometheus 导出器
在 Docker 化的解决方案中,Prometheus 会定期调用容器暴露的指标端点,并存储结果。对于现有应用,无需添加指标端点,可在当前应用旁运行一个控制台应用,并在该控制台应用中托管指标端点。
以 NerdDinner 网络应用为例,未对其代码做任何更改,就在其中添加了 Prometheus 端点。在 dockeronwindows/ch11-nerd-dinner-web-with-metrics 镜像中,添加了一个控制台应用,用于导出 ASP.NET 性能计数器并提供指标端点。该 ASP.NET 导出器应用来自 Docker Hub 上的公共镜像。NerdDinner 的完整 Dockerfile 如下:
#escape=`
FROM dockeronwindows/ch10-nerd-dinner-web:2e
EXPOSE 50505
ENV COLLECTOR_CONFIG_PATH="w3svc-collectors.json"
WORKDIR C:\aspnet-exporter
COPY --from=dockersamples/aspnet-monitoring-exporter:4.7.2-windowsservercore-ltsc2019 C:\aspnet-exporter .
ENTRYPOINT ["powershell"]
CMD Start-Service W3SVC; `
Invoke-WebRequest http://localhost -UseBasic
超级会员免费看
订阅专栏 解锁全文
888

被折叠的 条评论
为什么被折叠?



