node . jsExporter
在这个页面:
介绍
下面的快速入门提供设置说明和预配置的仪表板,报警规则,规则和记录为prom-client节点。js普罗米修斯指标出口国。贯穿在这个快速入门的步骤之后,您将:
设置和配置prom-client节点。js收集节点。js应用指标,如事件循环滞后、积极处理,GC指标。prom-client节点。js将公开这些Prometheus-style指标。
普罗米修斯为了刮prom-client节点配置。js指标和可选船Grafana云。
建立了一个预配置和策划组记录规则缓存频繁普罗米修斯查询。
进口Grafana仪表板可视化你的度量数据。
建立普罗米修斯报警规则提醒在你的度量数据。
指标使用
这出口国发布约78普罗米修斯默认时间序列。看到一个度量列表默认发货出口国,请下载样本指标刮伤在这里。
注意,取决于它的配置,prom-client节点。js可能收集和发布指标远远超过这个默认设置,来了解更多关于配置prom-client节点。js和切换收藏家,请参见prom-client node . jsGitHub库。
除了prom-client切换为节点。js的设置,您可以减少下降时间序列指标使用你不需要存储在普罗米修斯或者Grafana云。学习如何做到这一点,请参阅减少普罗米修斯指标和重新使用从Grafana云文档。
Grafana云的节点。js集成
如果你使用Grafana云,你可以跳过所有的步骤在这个指导安装的节点。js集成,其目的是帮助你获得启动并运行命令和点击。免费注册。
学习如何收集节点。js使用节点指标。js集成,请参阅node . jsIntegration从Grafana云文档。
在这个页面:
prom-client节点。js快速入门
本指南中您将了解如何设置和配置prom-client节点。js收集节点。js指标事件循环滞后和积极处理和暴露Prometheus-style指标。您将配置普罗米修斯刮节点。js指标和可选船Grafana云。最后,您将设置一个预配置和策划组Grafana指示板,报警规则。本指南的末尾你仪表板,您可以使用可视化你的节点。js指标,和一组预配置警报。
如果您正在使用Grafana云,node . js集成可以帮助你迅速启动并运行。的节点。js集成嵌入prom-client节点。js中Grafana云代理并自动报警规则规定和指示板,所以你不需要贯穿本指南中的步骤。学习如何设置prom-client节点。js使用节点。js集成,please seenode . jsIntegration从Grafana云文档。
先决条件
在你开始之前,你应该有以下可用:
- node . jsinstalled on your machine. To learn more, please see下载从节点。js站点。
- 普罗米修斯在您的环境中或直接在机器上运行。学习如何安装普罗米修斯,请参阅安装从普罗米修斯文档。
- Grafana运行在您的环境中或直接在机器上。学习如何安装Grafana,请参阅安装Grafana从Grafana文档。
- (可选)Grafana云账户。Grafana云主机Grafana和皮质端点的普罗米修斯指标。你仍然需要刮指标,使用普罗米修斯在您的环境中安装,或Grafana云代理。了解更多关于Grafana云,请参阅Grafana云。
步骤1:设置prom-client node . js
在此步骤中,我们将建立prom-client节点。js收集和暴露节点。js普罗米修斯格式的指标。本指南使用Ubuntu 20.04系统节点。js版本15.11.0
。步骤可能稍有不同,这取决于您的操作系统和节点。js版本。
本指南将展示一个新的节点的设置步骤。js应用。仪器现有节点。js应用程序,请参阅prom-client
GitHub库。
首先,登录到您的机器和创建一个新的应用程序目录应用程序
。导航到这个目录:
mkdir软件光盘
初始化节点项目使用npm init
:
npm init
使用默认设置,除了以下提示:
入口点(index.js):
这提示,输入app.js
然后点击输入
。
接下来,安装表达
和prom-client
使用npm
:
npm安装表达prom-client——保存
最后,使用您最喜欢的文本编辑器创建最小的应用。打开一个文件名为app.js
粘贴在下面:
从“表达”进口表达;从“prom-client”进口{collectDefaultMetrics,注册};collectDefaultMetrics ();const应用=表达();app.get(/指标,异步(_req res) = >{尝试{res.set(“内容类型”,register.contentType);res.end(等待register.metrics ());}捕捉(err) {res.status(500)指标(err)最终;}});app.listen(4001年,“0.0.0.0”);
这种贫乏的应用程序收集一组标准的节点。js指标和公开他们在普罗米修斯格式/指标
端点。它端口上侦听请求4001年
在本地主机
。
当你完成后,保存并关闭该文件。
最后,使用节点运行应用程序:
节点app.js
你不会看到任何输出,但您的shell应该挂。在另一个会话,模拟普罗米修斯勉强使用旋度
:
旋度localhost: 4001 /指标
。#帮助nodejs_gc_duration_seconds垃圾收集时间,主要的,次要的,增量或weakcb。#类型nodejs_gc_duration_seconds直方图nodejs_gc_duration_seconds_bucket{勒= " 0.001 ",类型=“增量”}2 nodejs_gc_duration_seconds_bucket{勒= " 0.01 ",类型=“增量”}4 nodejs_gc_duration_seconds_bucket{勒= " 0.1 ",类型=“增量”}4 nodejs_gc_duration_seconds_bucket{勒=“1”,类型=“增量”}4 nodejs_gc_duration_seconds_bucket{勒=“2”,类型=“增量”}4 nodejs_gc_duration_seconds_bucket{勒=“5”,类型=“增量”}4 nodejs_gc_duration_seconds_bucket{勒=“正”,类型=“增量”}4 nodejs_gc_duration_seconds_sum nodejs_gc_duration_seconds_count 0.007554849{类型=“增量”}{类型=“增量”}4 nodejs_gc_duration_seconds_bucket{勒= " 0.001 ",类型=“主要”}0 nodejs_gc_duration_seconds_bucket{勒= " 0.01 ",类型=“主要”}2 nodejs_gc_duration_seconds_bucket{勒= " 0.1 ",类型=“主要”}2 nodejs_gc_duration_seconds_bucket{勒=“1”,类型=“主要”}2 nodejs_gc_duration_seconds_bucket{勒=“2”,类型=“主要”}2 nodejs_gc_duration_seconds_bucket{勒=“5”,类型=“主要”}2 nodejs_gc_duration_seconds_bucket{勒=“正”,类型=“主要”}2 nodejs_gc_duration_seconds_sum nodejs_gc_duration_seconds_count 0.007220236999999999{类型=“主要”}{类型=“主要”}2
如果你看到上面的输出,你成功安装prom-client节点。js应用。你准备开始刮节点。js使用普罗米修斯指标。
除了collectDefaultMetrics
,prom-client
可以收集定制节点。js指标和允许您配置度量标签。更多地了解这些特性,请参阅prom-client节点。js GitHub库。
第二步:刮prom-client指标使用普罗米修斯
既然prom-client启动并运行在您的机器上,您可以配置一个普罗米修斯刮工作收集和存储节点。js指标。
添加以下刮工作配置scrape_configs
你的节prometheus.yml
配置文件:
- job_name: nodejs static_configs:目标:[' localhost: 4001 ']
取代本地主机
与机器的IP地址运行node . js。如果你是普罗米修斯在同一台机器上运行,这将是本地主机
。了解更多关于配置普罗米修斯,请参阅配置从普罗米修斯文档。
如果你没有一个prometheus.yml
配置文件,创建一个简单的一个使用您喜欢的文本编辑器。打开你喜欢的文本编辑器和粘贴在下面普罗米修斯配置:
全球:scrape_interval: 15秒scrape_configs: job_name: nodejs static_configs: -目标:(' localhost: 4001)
这个配置告诉普罗米修斯刮所有工作每15秒。唯一刮配置工作nodejs
和定义了一个localhost: 4001
目标。默认情况下,普罗米修斯将刮/指标
使用HTTP端点。
保存并关闭该文件。然后您可以使用下面的命令运行普罗米修斯的文件:
/ prometheus.yml /普罗米修斯——config.file =
航运指标Grafana云
船节点。js指标从普罗米修斯Grafana云,配置remote_write
参数在你prometheus.yml
配置文件。要了解更多,请参阅度量——普罗米修斯从Grafana云文档。学习更多有关remote_write
参数,请参阅remote_write
从普罗米修斯文档。
步骤3:配置仪表板
本快速入门包括一个仪表板:
- node . js概述
学习如何导入该仪表板Grafana,请参阅导入一个仪表板从Grafana文档。
你可以卖到仪表板在这里。
第四步:配置警报
普罗米修斯报警规则,您可以定义警报时,火PromQL表达式违反一些阈值或在一段时间内满足指定条件。例如,您可以定义一个HighRequestLatency
火灾警报,当一个请求延迟度量大于某个阈值在一段时间内。一旦触发报警条件,警戒进入等待
状态。满足条件后定义的一段时间为
参数,警报进入发射
状态。您可以配置路由和解雇的通知提醒使用工具Alertmanager。Alertmanager还内置Grafana云。
您可以获取报警规则YAML文件在这里。
报警规则加载到普罗米修斯
报警规则加载到普罗米修斯,添加以下prometheus.yml
配置文件:
rule_files:——“nodejs-rules.yml”
一定要更换nodejs-rules.yml
节点的路径。js应用报警规则YAML文件。
报警规则加载到Grafana云
学习如何报警规则加载到Grafana云,请参阅普罗米修斯与cortextool洛基规则。
结论
在这个快速入门你安装和运行prom-client节点。您的Linux机器上js。然后普罗米修斯刮数据库和节点配置。js应用指标prom-client暴露的node . js。你记录和报警规则加载到普罗米修斯,最后导入Grafana仪表板可视化你的节点。js应用指标。
如果你使用Grafana云,你可以跳过所有的步骤在这个指导安装的节点。js应用集成Grafana云代理。这种集成嵌入一个预配置prom-client节点。js中agent and automatically provisions Grafana dashboards and Prometheus alerting and recording rules, so you don’t have to import them manually. To learn how to set up the Node.js app integration, please seeGrafana云集成。
仪表板、记录规则和报警规则生成使用prom-client节点。js Mixin。mixin dasboards可重用模板,记录规则和警报策划和设计的主题专家。要了解更多,请参阅node . js应用程序Mixin存储库。
在这个页面:
本快速入门包括以下报警规则:
NodejsDown
node . js工作
在实例
不是。
组:-名称:NodejsAlerts规则:-警报:NodejsDown expr: process_start_time_seconds ! = 1: 5 m标签:严重性:关键注释:描述:节点。js{{$标签。工作}} on {{$labels.instance}} is not up.' summary: Node.js not up
这个报警规则使用node . js的prom-client YAML文件生成mixin。
在这个页面:
Grafana云有一组不断扩大的集成快速得到一个可观测性堆栈在几分钟内启动并运行。的节点。js应用集成,内置Grafana云代理,暴露和擦伤至关重要的节点。js应用指标,推动他们Grafana云。代理将刮指标使用嵌入式prom-client节点。js和Grafana云会自动为可视化提供定制的Grafana仪表板和警报和作用于这个数据。
要了解更多,请查看Grafana云文档。
它是如何工作的
配置、安装、连接和维护普罗米修斯监控组件通常涉及重大的领域知识。可能需要很长一段时间从安装到仪表板和警报。Grafana的创造者——普罗米修斯和核心贡献者和皮层——我们构建简单的集成文摘的一些工作为了迅速开始。它是如何工作的:
- 注册(或登录)免费Grafana云账户。
- 选择目标你想观察(一个不断扩大的目录)。
- 运行一行命令安装Grafana代理。代理嵌入和preconfigures出口商公开默认度量,并逼迫他们Grafana云指标后端。
- 瞧!你会看到定制Grafana仪表盘和将受益于理智提醒违约。
寻找不同的出口商或集成?看看我们越来越多的图书馆为受欢迎的组件集成像MySQL、Postgres复述,Memcached和更多。