in lib/skywalking/client.lua [126:157]
function Client:ping(metadata_buffer, backend_http_uri)
local log = ngx.log
local ERR = ngx.ERR
local serviceName = metadata_buffer:get('serviceName')
local serviceInstanceName = metadata_buffer:get('serviceInstanceName')
local cjson = require('cjson')
local pingPkg = require("skywalking.management").newServiceInstancePingPkg(serviceName, serviceInstanceName)
local pingPkgParam, err = cjson.encode(pingPkg)
if err then
log(ERR, "Agent ping fails, ", err)
end
local http = require('resty.http')
local httpc = http.new()
local res, err = httpc:request_uri(backend_http_uri .. '/v3/management/keepAlive', {
method = "POST",
body = pingPkgParam,
headers = {
["Content-Type"] = "application/json",
},
})
if err == nil then
if res.status ~= 200 then
log(ERR, "Agent ping fails, response code ", res.status)
end
else
log(ERR, "Agent ping fails, ", err)
end
end