更新时间:2023-01-10 16:23:29浏览次数:482+次
本文介绍在Linux上安装SigNoz的方法,并配置使用SigNoz。使用者可在Docker上安装SigNoz,当前在Docker上安装SigNoz有两种方法,以下将做介绍。
使用自动安装脚本
Ubuntu、Debian、OpenSuse、CentOS和SUSE Linux Enterprise Server(SLES)支持安装程序。首先使用以下命令克隆SigNoz存储库:
git clone -b main https://github.com/SigNoz/signoz.git
导航到目录:
cd signoz/deploy/
现在执行安装程序:
sudo ./install.sh
样本输出:
将系统用户添加到docker组:
sudo usermod -aG docker $USER
newgrp docker
验证安装情况:
$ docker ps
会返回signoz/frontend:0.11.2、signoz/alertmanager:0.23.0-0.2等运行的相关信息。
使用Docker Compose
这里,您需要手动安装系统上安装的Docker。以下指南可用于在Linux上安装docker:
如何在Ubuntu 22.04系统上安装Docker CE:https://www.hmxthome.com/linux/4941.html
安装后,请确保服务已启动并启用:
sudo systemctl start docker && sudo systemctl enable docker
将系统用户添加到docker组。
sudo usermod -aG docker $USER
newgrp docker
此外,使用指南中提供的帮助安装docker compose:
在Ubuntu 22.04/Debian 11上安装Docker Compose:https://www.hmxthome.com/linux/4942.html
安装后,克隆存储库:
git clone -b main https://github.com/SigNoz/signoz.git && cd signoz/deploy/
现在使用以下命令运行容器:
docker-compose -f docker/clickhouse-setup/docker-compose.yaml up -d
检查容器是否已运行:
$ docker ps
会返回signoz/query-service:0.11.2、signoz/signoz-otel-collector:0.55.3等运行的相关信息。
访问SigNoz仪表板
一旦容器被部署,允许端口3301通过防火墙:
##对于UFW
sudo ufw allow 3301
##对于Firewalld
sudo firewall-cmd --add-port=3301/tcp --permanent
sudo firewall-cmd --reload
现在使用URL访问SigNoz仪表板,地址是http://IP_Address:3301,然后在创建帐户后就可以进入到仪表板中了:
至此,安装SigNoz完成。
现在就可以使用SigNoz测量和监控应用程序了。比如可创建简单NodeJS应用程序。
确保系统上安装了NodeJS。例如NodeJS 16:
##在Debian/Ubuntu上
curl -sL https://deb.nodesource.com/setup_16.x | sudo bash -
sudo apt -y install nodejs
##在RHEL/CentOS/Rocky Linux上
curl -sL https://rpm.nodesource.com/setup_16.x | sudo -E bash -
sudo dnf install nodejs
验证安装:
$ node -v
v16.18.0
$ npm -v
8.19.2
克隆一个简单的NodeJS应用程序repo:
git clone https://github.com/SigNoz/sample-nodejs-app.git
导航到目录:
cd sample-nodejs-app
你会发现这里有两个文件:
在端口9090上运行的简单HelloWorld应用程序的index.js。
遥测采集的tracing.js。
安装所有必需的软件包:
npm i
允许所需端口通过防火墙:
##对于UFW
sudo ufw allow 4317
sudo ufw allow 9090
##对于Firewalld
sudo firewall-cmd --add-port=4317/tcp --permanent
sudo firewall-cmd --add-port=9090/tcp --permanent
sudo firewall-cmd --reload
要启动应用程序和度量收集,我们将使用以下命令:
OTEL_EXPORTER_OTLP_ENDPOINT="<IP of SigNoz>:4317" OTEL_RESOURCE_ATTRIBUTES=service.name=nodeJsApp node -r ./tracing.js index.js
在上述命令中,替换:
IP of SigNoz:localhost(因为我们在本地主机上运行SigNoz)。
service.name:nodeJsApp(您可以给出任何适合您的名称)。
因此,命令将是:
OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4317" OTEL_RESOURCE_ATTRIBUTES=service.name=nodeJsApp node -r ./tracing.js index.js
现在应用程序应该在端口9090上运行,可以使用URL访问,地址格式为http://IP_Address:9090/hello,如下图:
分别命中此端点以生成一些数据。一段时间后,访问SigNoz仪表板,打开Services选项卡,然后单击Refresh。您将看到如下所示的应用程序:
现在,您可以查看应用程序的图形,并通过单击应用程序来确定导致高延迟的事件、关键操作和错误百分比。您还可以在SigNoz上创建仪表板并配置警报,还可以为其他语言配置仪表:
关于其他的SigNoz应用,使用者可以自由的摸索。
相关资讯