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

 
 
 
 

lapis 项目添加prometheus 监控的更多相关文章

  1. lapis 项目添加prometheus 监控集成grafana

    操作很简单,主要是进行界面的配置以及prometheus 服务的配置, 可以和https://www.cnblogs.com/rongfengliang/p/10074044.html &&a ...

  2. 为springboot项目添加springboot-admin监控

    我们知道spring-boot-actuator暴露了大量统计和监控信息的端点,spring-boot-admin 就是为此提供的监控项目. 先来看看大概会提供什么样的功能 从图中可以看出,主要内容都 ...

  3. 手把手教你使用 Prometheus 监控 JVM

    概述 当你的 Java 业务容器化上 K8S 后,如果对其进行监控呢?Prometheus 社区开发了 JMX Exporter 来导出 JVM 的监控指标,以便使用 Prometheus 来采集监控 ...

  4. Kubernetes集群部署史上最详细(二)Prometheus监控Kubernetes集群

    使用Prometheus监控Kubernetes集群 监控方面Grafana采用YUM安装通过服务形式运行,部署在Master上,而Prometheus则通过POD运行,Grafana通过使用Prom ...

  5. 自定义Metrics:让Prometheus监控你的应用程序

    前言 Prometheus社区提供了大量的官方以及第三方Exporters,可以满足Prometheus的采纳者快速实现对关键业务,以及基础设施的监控需求. 如上所示,一个简单的应用以及环境架构.一般 ...

  6. Kubernetes容器集群管理环境 - Prometheus监控篇

    一.Prometheus介绍之前已经详细介绍了Kubernetes集群部署篇,今天这里重点说下Kubernetes监控方案-Prometheus+Grafana.Prometheus(普罗米修斯)是一 ...

  7. Prometheus(三):Prometheus监控交换机(snmp)

    默认已安装Prometheus服务,服务地址:192.168.56.200 一.获取交换机snmp信息 snmp服务IP(交换机IP):172.20.2.83 snmp community:dfete ...

  8. Prometheus监控系统之入门篇(一)

    1. 简介 Prometheus: (简称Prom)是由SoundCloud开发的开源监控报警系统.是大名鼎鼎的CNCF云原生基金会下的第二大开源项目.具有如下特点: 使用Go语言开发 内置时序数据库 ...

  9. Prometheus监控 Redis & Redis Cluster 说明

    说明 在前面的Prometheus + Grafana 部署说明之「安装」文章里,大致介绍说明了Prometheus和Grafana的一些安装使用,现在开始如何始部署Prometheus+Grafan ...

随机推荐

  1. Centos防火墙设置与端口开放的方法

    Centos升级到7之后,内置的防火墙已经从iptables变成了firewalld.所以,端口的开启还是要从两种情况来说明的,即iptables和firewalld.更多关于CentOs防火墙的最新 ...

  2. Android system :led_class驱动

    一.代码: leds_4412.c #include <linux/kernel.h> #include <linux/module.h> #include <linux ...

  3. MicroOrm.Dapper.Repositories 的使用

    https://github.com/geffzhang/MicroOrm.Dapper.Repositories 1.特性标记都是要引用: System.ComponentModel.DataAnn ...

  4. do文件的编写(转)

    以前在使用ModelSim进行仿真的时候,一直是使用其GUI进行操作的,但是这样很繁琐也很费时.故希望学习其自动化仿真do文件,下面是学习的一些总结. 一.编写基本的do文件 下面按照实际仿真的步骤来 ...

  5. gmtdefaults locate

    http://seisman.blog.ustc.edu.cn/index.php/archives/553

  6. CodeForces - 631C (截取法)

    C. Report time limit per test 2 seconds memory limit per test 256 megabytes input standard input out ...

  7. 解析url中参数

    兼容不带参数等情况 function getUrlParam(){ var params = {}; var search = location.search; search = /\?/.test( ...

  8. Oracle数据库三种备份方案

    Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/导入(Export/Import) 利用 ...

  9. MySql:触发器

    触发器 一.触发器的定义: 触发器是个特殊的存储过程,不同的是,执行存储过程要使用CALL语句来调用,而触发器的执行不需要使用CALL语句来调用,也不需要手工启动,只要当一个预定的事件发生时,就会被M ...

  10. php多进程和多线程的比较

    前言 最近在学习php多进程和多线程的编程.说实话,这两样在工作中几乎都没有用到,毕竟php并不以异步处理擅长,对于网络请求同步处理可以解决绝大多数问题.但是既然有这样的机制,也了解一下,对于以后接触 ...