日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用Skywalking對Nginx進(jìn)行鏈路追蹤

通過SkyWalking為應(yīng)用埋點并上報鏈路數(shù)據(jù)至可觀測鏈路 OpenTelemetry 版后,可觀測鏈路 OpenTelemetry 版即可開始監(jiān)控應(yīng)用,您可以查看應(yīng)用拓?fù)洹⒄{(diào)用鏈路、異常事務(wù)、慢事務(wù)和SQL分析等一系列監(jiān)控數(shù)據(jù)。本文介紹如何通過SkyWalking Nginx LUA module自動埋點并上報Nginx的鏈路追蹤數(shù)據(jù)。

前提條件

獲取接入點信息

  1. 登錄ARMS控制臺,在左側(cè)導(dǎo)航欄單擊接入中心

  2. 服務(wù)端應(yīng)用區(qū)域單擊SkyWalking卡片。

  3. 在彈出的SkyWalking面板中選擇數(shù)據(jù)需要上報的地域。

    說明

    初次接入的地域?qū)詣舆M(jìn)行資源初始化。

  4. 選擇連接方式,然后復(fù)制接入點信息。

    若您的服務(wù)部署在阿里云上,且所屬地域與選擇的接入地域一致,推薦使用阿里云內(nèi)網(wǎng)方式,否則選擇公網(wǎng)方式。

    image.png

背景信息

SkyWalking是一款廣受歡迎的國產(chǎn)應(yīng)用性能監(jiān)控APM(Application Performance Monitoring)產(chǎn)品,主要針對微服務(wù)、Cloud Native和容器化(Docker、Kubernetes、Mesos)架構(gòu)的應(yīng)用。SkyWalking的核心是一個分布式追蹤系統(tǒng)。

要通過SkyWalkingJava應(yīng)用數(shù)據(jù)上報至可觀測鏈路 OpenTelemetry 版控制臺,首先需要完成埋點工作。SkyWalking既支持自動埋點(Dubbo、gRPC、JDBC、OkHttp、Spring、Tomcat、Struts、Jedis等),也支持手動埋點(OpenTracing)。本文介紹自動埋點方法。

通過Docker鏡像快速配置skywalking-nginx-lua

使用打包好的Docker配置skywalking-nginx-lua。

  1. Registry中拉取鏡像。

    docker pull registry.cn-hangzhou.aliyuncs.com/public-community/skywalking-nginx-lua:0.2
  2. 運行Nginx Docker。

    docker run --rm  -p 80:80 -e "BACKEND_URL=$skywalking-nginx-lua"  -d registry.cn-hangzhou.aliyuncs.com/public-community/skywalking-nginx-lua:0.2

    $skywalking-nginx-lua是前提條件中保存的nginx-lua接入點信息。

    例如:

    docker run --rm  -p 80:80 -e "BACKEND_URL=http://tracing-analysis-dc-hz.aliyuncs.com/adapt_123@abc_456@efg"  -d registry.cn-hangzhou.aliyuncs.com/public-community/skywalking-nginx-lua:0.2
  3. 訪問Nginx頁面。

    • 在瀏覽器上訪問localhost/nginx.conf

    • 執(zhí)行命令curl "localhost/nginx.conf"

通過Dockerfile配置skywalking-nginx-lua

  1. 下載Dockerfile。

    wget https://arms-apm.oss-cn-hangzhou.aliyuncs.com/demo/nginx-skywalking-docker.tgz
    tar -xzvf nginx-skywalking-docker.tgz
    cd nginx-lua
  2. 編譯Docker。

    docker build --rm --tag skywalking-nginx-lua:0.2 .
  3. 運行Docker。

    docker run --rm  -p 80:80 -e "BACKEND_URL=$skywalking-nginx-lua"  -d skywalking-nginx-lua:0.2

    $skywalking-nginx-lua是前提條件中保存的nginx-lua接入點信息。

    例如:

    docker run --rm  -p 80:80 -e "BACKEND_URL=http://tracing-analysis-dc-hz.aliyuncs.com/adapt_123@abc_456@efg"  -d skywalking-nginx-lua:0.2
  4. 訪問Nginx頁面。

    • 在瀏覽器上訪問localhost/nginx.conf

    • 執(zhí)行命令curl "localhost/nginx.conf"

ECS上配置skywalking-nginx-lua

此處以在CentOS 7.0上的操作為例。

  1. 配置Lua運行環(huán)境。

    1. 安裝工具庫。

      yum install gcc gcc-c++ kernel-devel -y
      yum install readline-devel -y
      yum install ncurses-devel -y
    2. 下載并安裝Lua 5.3.5。

      cd /usr/local/src
      wget http://www.lua.org/ftp/lua-5.3.5.tar.gz
      tar -zxvf lua-5.3.5.tar.gz
      cd /usr/local/src/lua-5.3.5 && echo "INSTALL_TOP= /usr/local/lua_5.3.5" >> Makefile && make linux && make install
    3. 下載并安裝LuaRocks 2.2.2。

      cd /usr/local/src
      wget http://keplerproject.github.io/luarocks/releases/luarocks-2.2.2.tar.gz
      tar -xzvf luarocks-2.2.2.tar.gz
      cd luarocks-2.2.2
      ./configure --prefix=/usr/local/luarocks_2.2.2 --with-lua=/usr/local/lua_5.3.5
      make build
      make install
    4. /etc/profile文件中添加以下內(nèi)容。

      export LUA_HOME=/usr/local/lua_5.3.5
      export LUAROCKS_HOME=/usr/local/luarocks_2.2.2
      PATH=$PATH:$HOME/bin:$LUAROCKS_HOME/bin:$LUA_HOME/bin
      export PATH
      export LUA_PATH="$LUAROCKS_HOME/share/lua/5.3/?.lua;?.lua;;"
      export LUA_CPATH="$LUAROCKS_HOME/lib/lua/5.3/?.so;?.so;;"
    5. 刷新/etc/profile配置文件。

      source /etc/profile
    6. 安裝Lua組件。

      luarocks install luasocket
      luarocks install lua-resty-jit-uuid
      luarocks install luaunit
      luarocks install lua-cjson 2.1.0-1
    7. 確認(rèn)Lua組件是否安裝成功。

      luarocks list
  2. 下載并安裝OpenResty Nginx。

    yum install pcre-devel openssl-devel gcc curl postgresql-devel
    cd /usr/local/src
    wget -c https://openresty.org/download/openresty-1.15.8.1rc2.tar.gz
    tar -zxvf openresty-1.15.8.1rc2.tar.gz
    cd openresty-1.15.8.1rc2
    ./configure --prefix=/usr/local/openresty/ --with-http_stub_status_module --with-luajit --without-http_redis2_module --with-http_iconv_module --with-http_postgres_module --with-stream && gmake && gmake install
    export PATH=/usr/local/openresty/nginx/sbin:$PATH
  3. 下載并安裝skywalking-nginx-lua。

    1. 下載并解壓skywalking-nginx-lua安裝包。

      cd /usr/local/skywalking-nginx-lua
      wget https://mirrors.tuna.tsinghua.edu.cn/apache/skywalking/nginx-lua/0.5.0/skywalking-nginx-lua-0.5.0-src.tgz
      tar -xzvf skywalking-nginx-lua-0.5.0-src.tgz
    2. 修改nginx.conf文件中的lua_package_pathstartBackendTimer

      例如:

      • lua_package_path改為/usr/local/skywalking-nginx-lua/lib/?.lua;;

      • startBackendTimer改為require("skywalking.client"):startBackendTimer("http://tracing-analysis-dc-hz.aliyuncs.com/adapt_***")

    3. 啟動skywalking-nginx-lua。

      nginx -c /usr/local/skywalking-nginx-lua/examples/nginx.conf

查看結(jié)果

登錄ARMS控制臺后,在應(yīng)用監(jiān)控 > 應(yīng)用列表頁面選擇目標(biāo)應(yīng)用,查看鏈路數(shù)據(jù)。

說明

語言列顯示image圖標(biāo)的應(yīng)用為接入應(yīng)用監(jiān)控的應(yīng)用,顯示-圖標(biāo)的應(yīng)用為接入可觀測鏈路 OpenTelemetry 版的應(yīng)用。