在Instana中包含来自GitLab安装的Nginx指标

时间:2019-07-31 14:00:42

标签: nginx gitlab instana

使用Instana监视我的GitLab安装时遇到麻烦。 GitLab及其附带的Nginx运行正常,仅无法进行监视。

Instana可以识别nginx,但无法获取任何信息,因为它无法从/ nginx_status位置获取数据。

我将/ nginx_status的其他配置添加到/etc/gitlab/gitlab.rb中,并使用gitlab-ctl重新配置进行安装(就像gitlab文档所说的那样)。基本上gitlab可以正常工作,并显示状态页面http://git-test:9999/nginx_status

我的配置文件/var/opt/gitlab/nginx/conf/nginx.conf现在在其末尾具有/var/opt/gitlab/nginx/conf/nginx-status.conf的附加包含。文件内容看起来也不错。

server  {
    listen 10.51.13.169:9999;
    server_name s00228862uv.ads.provinzial.com;
    location /nginx_status {
      stub_status;
      server_tokens off;
      access_log off;
      allow all;
      deny all;
      stub_status on;
    }
    location /metrics {
      vhost_traffic_status_display;
      vhost_traffic_status_display_format prometheus;
      server_tokens off;
      access_log off;
      allow all;
      deny all;
      stub_status on;
    }

    location /rails-metrics {
      proxy_cache off;
      proxy_pass  http://gitlab-workhorse/-/metrics;
      server_tokens off;
      access_log off;
      allow all;
      deny all;
      stub_status on;
    }
}

我现在的问题是instana无法获取通过/ nginx_status公开的信息,表明nginx需要配置。

  

找不到状态URL。   Nginx配置文件已解析,没有stub_status   方向可以找到。该指令需要   配置以便收集nginx指标。的   以下代码段显示了如何配置stub_status   在Nginx配置文件中。

对我来说,似乎instana没有遵循include,因此没有从/var/opt/gitlab/nginx/conf/nginx-status.conf中获取配置。因此,基本上instana对其要求的信息一无所知。

你们当中有人知道我如何将这些状态信息提供给instana吗?在此先感谢大家和最诚挚的问候。塞巴斯蒂安

1 个答案:

答案 0 :(得分:1)

您可以删除该服务器中的/ nginx_status位置,并添加一个新的服务器部分,如下所示:

server {
    listen 127.0.0.1:80;
    server_name 127.0.0.1;

    # Required by Instana
    location /nginx_status {
        stub_status on;
        access_log off;
    }
}