lapis 项目添加prometheus 监控

lapis 是基于openresty 扩展的,所以直接将支持prometheus的模块构建进openresty 就可以了
我使用的是nginx-module-vts 模块

环境准备

我已经构建好了支持的基础镜像,可以直接配置即可,具体的可以看下面的参考资料

  • docker-compose 文件
version: "3"
services:
 api:
   build: ./
   ports:
   - "8080:8080"
   volumes:
   - "./web:/web"
  • dockerfile
FROM dalongrong/lapis-1.7.0:metrics
ENTRYPOINT [ "lapis","server" ]
  • dalongrong/lapis-1.7.0:metrics 镜像
FROM dalongrong/openresty-nginx-module-vts:fat
RUN apk add openssl-dev
WORKDIR /web
RUN /usr/local/openresty/luajit/bin/luarocks install lapis
worker_processes ${{NUM_WORKERS}};
error_log stderr notice;
daemon off;
pid logs/nginx.pid;

events {
  worker_connections 1024;
}

http {
  include mime.types;
  vhost_traffic_status_zone;
  server {
    listen ${{PORT}};
    lua_code_cache ${{CODE_CACHE}};
    vhost_traffic_status_filter_by_set_key $uri uris::$server_name;
    vhost_traffic_status_filter_by_host on;
    location / {
      vhost_traffic_status_bypass_limit on;
      default_type text/html;
      content_by_lua '
        require("lapis").serve("app")
      ';
    }
    location /status {
        vhost_traffic_status_display;
        vhost_traffic_status_display_format html;
    }
    location /static/ {
      alias static/;
    }

    location /favicon.ico {
      alias static/favicon.ico;
    }
  }
}

启动&&测试

  • 启动
docker-compose up -d
  • 效果

    prometheus metrics

参考资料

https://github.com/rongfengliang/openresty-nginx-module-vts
https://github.com/rongfengliang/openresty_nginx-module-vts_prometheus_grafana
https://github.com/rongfengliang/lapis-docker

posted on   荣锋亮  阅读(342)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2016-12-05 NSSM - windows 服务安装工具
2014-12-05 跨服务器多库多表查询

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示