From cca93d15b6987646c4531138be026250deffd608 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Tue, 11 Jul 2023 17:39:24 +0800 Subject: [PATCH 01/19] pack tbc --- .DS_Store | Bin 6148 -> 6148 bytes .idea/vcs.xml | 1 + source/.DS_Store | Bin 6148 -> 6148 bytes source/tools/.DS_Store | Bin 6148 -> 6148 bytes source/tools/monitor/.DS_Store | Bin 6148 -> 6148 bytes .../tools/monitor/sls_metric/native/README.md | 10 ++ .../monitor/sls_metric/native/build_shared.sh | 7 + .../monitor/sls_metric/native/ffi_lua.lua | 37 +++++ .../monitor/sls_metric/native/metricSnappy.go | 88 ++++++++++++ .../monitor/sls_metric/native/test_sls.go | 135 ++++++++++++++++++ source/tools/monitor/unity/beeQ/pack.sh | 6 + .../tools/monitor/unity/common/transPro.lua | 114 +++++++++++++++ .../tools/monitor/unity/httplib/coMetrics.lua | 77 ++++++++++ 13 files changed, 475 insertions(+) create mode 100644 source/tools/monitor/sls_metric/native/README.md create mode 100644 source/tools/monitor/sls_metric/native/build_shared.sh create mode 100644 source/tools/monitor/sls_metric/native/ffi_lua.lua create mode 100644 source/tools/monitor/sls_metric/native/metricSnappy.go create mode 100644 source/tools/monitor/sls_metric/native/test_sls.go create mode 100644 source/tools/monitor/unity/common/transPro.lua create mode 100644 source/tools/monitor/unity/httplib/coMetrics.lua diff --git a/.DS_Store b/.DS_Store index b639f68ef81e47f5d1ca0c3e13497b3d586b058e..0a05c2ecc3f111dbd7f64aebfc0261ff29bde874 100644 GIT binary patch delta 21 ccmZoMXffC@hmph3#8gMY$jEr}62=5E07lpb2><{9 delta 21 ccmZoMXffC@hmpg`#8OAW$jE&262=5E07oeX5&!@I diff --git a/.idea/vcs.xml b/.idea/vcs.xml index 35eb1ddf..ca06ea04 100644 --- a/.idea/vcs.xml +++ b/.idea/vcs.xml @@ -2,5 +2,6 @@ + \ No newline at end of file diff --git a/source/.DS_Store b/source/.DS_Store index fe62bc3d37d7e43ee3c765a76137456f136a5618..d1dfa3a58defaccdf0ca40128129ee9309e826df 100644 GIT binary patch delta 21 ccmZoMXffC@i;=_7#8gMY$jEr}BE}>!07kS12LJ#7 delta 21 ccmZoMXffC@i;=^~#8OAW$jE&2BE}>!07nG|5C8xG diff --git a/source/tools/.DS_Store b/source/tools/.DS_Store index 12272494a9145ab77e6821d51a35aa9e656937e1..92bca4ce44564ad51755d1b04a183862ec2d9984 100644 GIT binary patch delta 21 ccmZoMXffC@kCDUB#8gMY$jEr}GR8PD07m=<3jhEB delta 21 ccmZoMXffC@kCDU3#8OAW$jE&2GR8PD07p#*6aWAK diff --git a/source/tools/monitor/.DS_Store b/source/tools/monitor/.DS_Store index 54403a1caa441bc5047ab36847f73aef327fef34..a14a589358826038c45801419f1756d7f50b5e8d 100644 GIT binary patch delta 21 ccmZoMXffC@i;=_7#8gMY$jEr}BE}>!07kS12LJ#7 delta 21 ccmZoMXffC@i;=^~#8OAW$jE&2BE}>!07nG|5C8xG diff --git a/source/tools/monitor/sls_metric/native/README.md b/source/tools/monitor/sls_metric/native/README.md new file mode 100644 index 00000000..95e08e3e --- /dev/null +++ b/source/tools/monitor/sls_metric/native/README.md @@ -0,0 +1,10 @@ +模块功能: + 将prometheus格式字符串转化为snappy压缩后的字节流 + +run: + sh ./build_shared.sh + luajit ffi_lua.lua + +test: + 修改metricstore信息 + go run test_sls.go \ No newline at end of file diff --git a/source/tools/monitor/sls_metric/native/build_shared.sh b/source/tools/monitor/sls_metric/native/build_shared.sh new file mode 100644 index 00000000..743e6b0d --- /dev/null +++ b/source/tools/monitor/sls_metric/native/build_shared.sh @@ -0,0 +1,7 @@ +rm go.mod +rm go.sum +go mod init metricSnappy.go +go mod tidy +go build -o libmetricSnappy.so -buildmode=c-shared metricSnappy.go +cp libmetricSnappy.so ../../beeQ/lib + diff --git a/source/tools/monitor/sls_metric/native/ffi_lua.lua b/source/tools/monitor/sls_metric/native/ffi_lua.lua new file mode 100644 index 00000000..2c3649d6 --- /dev/null +++ b/source/tools/monitor/sls_metric/native/ffi_lua.lua @@ -0,0 +1,37 @@ +local ffi = require("ffi") +local awesome = ffi.load('metricSnappy') + +ffi.cdef[[ +typedef signed char GoInt8; +typedef unsigned char GoUint8; +typedef long long GoInt64; +typedef GoInt64 GoInt; +typedef double GoFloat64; +typedef struct { const char *p; GoInt n; } GoString; +typedef struct { void *data; GoInt len; GoInt cap; } GoSlice; +extern GoInt metricSnappy(GoString* prome_ptr, GoSlice* ret); +]] + +return {ffi = ffi, awesome = awesome} +-- +---- input prometheus string +--local prome = ffi.new("GoString") +---- an example of prometheus string +--local s = 'sysak_proc_cpu_total{mode="user",instance="i-wz9d3tqjhpb8esj8ps4z"} 0.8\nsysak_proc_cpu_total{mode="total",instance="i-wz9d3tqjhpb8esj8ps4z"} 3960.0' +--prome.p = s; +--prome.n = #s; +--local prome_ptr = ffi.cast("GoString*", prome) +--local byte = ffi.new("GoSlice") +--local byte_ptr = ffi.cast("GoSlice*", byte) +-- +---- execute parse and snappy +--local data_len = awesome.metricSnappy(prome,byte_ptr) +-- +---- read data in lua +--data_len = tonumber(data_len) +--local data = ffi.cast("GoUint8*", byte_ptr.data) +-- +---- show data +--for i = 0, data_len do +-- print(data[i]) +--end diff --git a/source/tools/monitor/sls_metric/native/metricSnappy.go b/source/tools/monitor/sls_metric/native/metricSnappy.go new file mode 100644 index 00000000..ad45f956 --- /dev/null +++ b/source/tools/monitor/sls_metric/native/metricSnappy.go @@ -0,0 +1,88 @@ +package main + +import "C" + +import ( + "fmt" + "time" + "strings" + "strconv" + "github.com/gogo/protobuf/proto" + "github.com/prometheus/prometheus/prompb" + "github.com/golang/snappy" + "regexp" +) + +//export metricSnappy +func metricSnappy(prome_ptr *string, ret *[]byte) int { + /* + input: + prome_ptr, *string, prometheus data + ret, *[]byte, receive return byte data + output: + int, length of return data + */ + // initialize + var prome = strings.Split(*prome_ptr, "\n") + timeSeries := []prompb.TimeSeries{}; + timestamp := time.Now().UnixNano() + + for i:=0;i Date: Tue, 11 Jul 2023 18:27:15 +0800 Subject: [PATCH 02/19] move sls_metric --- source/tools/monitor/{ => unity}/sls_metric/native/README.md | 0 .../tools/monitor/{ => unity}/sls_metric/native/build_shared.sh | 0 source/tools/monitor/{ => unity}/sls_metric/native/ffi_lua.lua | 0 .../tools/monitor/{ => unity}/sls_metric/native/metricSnappy.go | 0 source/tools/monitor/{ => unity}/sls_metric/native/test_sls.go | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename source/tools/monitor/{ => unity}/sls_metric/native/README.md (100%) rename source/tools/monitor/{ => unity}/sls_metric/native/build_shared.sh (100%) rename source/tools/monitor/{ => unity}/sls_metric/native/ffi_lua.lua (100%) rename source/tools/monitor/{ => unity}/sls_metric/native/metricSnappy.go (100%) rename source/tools/monitor/{ => unity}/sls_metric/native/test_sls.go (100%) diff --git a/source/tools/monitor/sls_metric/native/README.md b/source/tools/monitor/unity/sls_metric/native/README.md similarity index 100% rename from source/tools/monitor/sls_metric/native/README.md rename to source/tools/monitor/unity/sls_metric/native/README.md diff --git a/source/tools/monitor/sls_metric/native/build_shared.sh b/source/tools/monitor/unity/sls_metric/native/build_shared.sh similarity index 100% rename from source/tools/monitor/sls_metric/native/build_shared.sh rename to source/tools/monitor/unity/sls_metric/native/build_shared.sh diff --git a/source/tools/monitor/sls_metric/native/ffi_lua.lua b/source/tools/monitor/unity/sls_metric/native/ffi_lua.lua similarity index 100% rename from source/tools/monitor/sls_metric/native/ffi_lua.lua rename to source/tools/monitor/unity/sls_metric/native/ffi_lua.lua diff --git a/source/tools/monitor/sls_metric/native/metricSnappy.go b/source/tools/monitor/unity/sls_metric/native/metricSnappy.go similarity index 100% rename from source/tools/monitor/sls_metric/native/metricSnappy.go rename to source/tools/monitor/unity/sls_metric/native/metricSnappy.go diff --git a/source/tools/monitor/sls_metric/native/test_sls.go b/source/tools/monitor/unity/sls_metric/native/test_sls.go similarity index 100% rename from source/tools/monitor/sls_metric/native/test_sls.go rename to source/tools/monitor/unity/sls_metric/native/test_sls.go -- Gitee From 99424ca92d0a94d05a055a05fb6bc56680626a78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Wed, 12 Jul 2023 09:39:28 +0800 Subject: [PATCH 03/19] modify gitignore --- .gitignore | 3 +++ source/tools/monitor/unity/httplib/coMetrics.lua | 1 + sync.sh | 1 + 3 files changed, 5 insertions(+) create mode 100644 sync.sh diff --git a/.gitignore b/.gitignore index 40a844cf..bfe50ecd 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,9 @@ *.ko *.ko.cmd *.idea +sync.sh +/.DS_Store +/.idea Module.symvers modules.builtin modules.order diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index 55d0a5d0..5ef1dff3 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -71,6 +71,7 @@ function CcoMetrics:pack(body) --在哪里调用的 ["Content-Length"] = #body, } local heads = self:packCliHeaders(head) + print("pack finish") return pystring:join("\r\n", {line, heads, body}) end diff --git a/sync.sh b/sync.sh new file mode 100644 index 00000000..ab2adceb --- /dev/null +++ b/sync.sh @@ -0,0 +1 @@ +rsync -avz -e 'ssh -p 1049' * root@100.82.20.22:/root/1ext/code/sysak \ No newline at end of file -- Gitee From 37b029ea5a6ead0501089b14bd34ea848726099e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Wed, 12 Jul 2023 10:07:47 +0800 Subject: [PATCH 04/19] modify pushTo --- source/tools/monitor/unity/beeQ/pushTo.lua | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/source/tools/monitor/unity/beeQ/pushTo.lua b/source/tools/monitor/unity/beeQ/pushTo.lua index bf301ffe..522b84d7 100644 --- a/source/tools/monitor/unity/beeQ/pushTo.lua +++ b/source/tools/monitor/unity/beeQ/pushTo.lua @@ -6,12 +6,20 @@ package.path = package.path .. ";../?.lua;" +local system = require("common.system") local coCli = require("httplib.coCli") local coInflux = require("httplib.coInflux") +local coMetrics = require("httplib.coMetrics") function work(fd, fYaml) + local conf = system:parseYaml(fYaml) + local to = conf.pushTo.to local frame = coCli.new(fd) - local c = coInflux.new(fYaml) + self._funcs = { + Influx = function(fYaml) return coInflux.new(fYaml) end, + Metrics = function(fYaml) return coMetrics.new(fYaml) end + } + local c = self._funcs[to](fYaml) frame:poll(c) print("end push.") return 0 -- Gitee From 29b979c6328e19553d55de059a9f8571a7cbe3b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Wed, 12 Jul 2023 14:53:32 +0800 Subject: [PATCH 05/19] TODO:use prometheus-writer to test --- source/tools/monitor/unity/beeQ/pushTo.lua | 4 +-- .../tools/monitor/unity/httplib/coMetrics.lua | 29 ++++++++++++++----- 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/source/tools/monitor/unity/beeQ/pushTo.lua b/source/tools/monitor/unity/beeQ/pushTo.lua index 522b84d7..22a73db6 100644 --- a/source/tools/monitor/unity/beeQ/pushTo.lua +++ b/source/tools/monitor/unity/beeQ/pushTo.lua @@ -15,11 +15,11 @@ function work(fd, fYaml) local conf = system:parseYaml(fYaml) local to = conf.pushTo.to local frame = coCli.new(fd) - self._funcs = { + local _funcs = { Influx = function(fYaml) return coInflux.new(fYaml) end, Metrics = function(fYaml) return coMetrics.new(fYaml) end } - local c = self._funcs[to](fYaml) + local c = _funcs[to](fYaml) frame:poll(c) print("end push.") return 0 diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index 5ef1dff3..af8b8494 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -11,7 +11,7 @@ local system = require("common.system") local pystring = require("common.pystring") local lineParse = require("common.lineParse") local CtransPro = require("common.transPro") - +local base64 = require("base64") local CcoMetrics = class("coMetrics", CcoHttpCli) @@ -22,13 +22,19 @@ function CcoMetrics:_init_(fYaml) local _metrics = res.metrics self._mhead = _metrics.head self._title = _metrics.title - + self._ak = 1 + self._sk = 2 self._transPro = CtransPro.new(self._instance, fYaml, false, false) -- go ffi local ffi = require("sls_metric.native.ffi_lua") self.ffi = ffi.ffi self.awesome = ffi.awesome + + --fox ffi + local foxFFI = require("tsdb.native.foxffi") + self.foxffi = foxFFI.ffi + self.foxcffi = foxFFI.cffi end function CcoMetrics:echo(tReq) @@ -45,31 +51,40 @@ function CcoMetrics:trans(msgs) lines = msgs.lines res = self._transPro:export(lines) - + print("trans finish") local prome = self.ffi.new("GoString") prome.p = res prome.n = #res local prome_ptr = self.ffi.cast("GoString*", prome) local byte = self.ffi.new("GoSlice") - local byte_ptr = self.ffi.cast("GoSlice*", byte) + local byte_ptr = self.ffi.cast("GoSlice*", byte) --{ void *data; GoInt len; GoInt cap; } GoSlice local data_len = self.awesome.metricSnappy(prome,byte_ptr) data_len = tonumber(data_len) local data = self.ffi.cast("GoUint8*", byte_ptr.data) + --local stream = "" --for i = 0, data_len do - -- print(data[i]) + -- --print(data[i]) + -- + -- stream = stream .. string.char(data[i]) --end + -- + --print(stream) + --return stream - return data + return self.foxffi.string(data, data_len) end -function CcoMetrics:pack(body) --在哪里调用的 +function CcoMetrics:pack(body) + print("pack start ".. body) local line = self:packCliHead('POST', self._url) local head = { Host = self._host, ["Content-Encoding"] = "snappy", ["Content-Type"] = "application/x-protobuf", ["Content-Length"] = #body, + ["Authorization"] = "Basic " .. base64.encode(self._ak .. ":"..self._sk) } + local heads = self:packCliHeaders(head) print("pack finish") return pystring:join("\r\n", {line, heads, body}) -- Gitee From e5d51e50df51ccd391da5509c8add77ef8d0aefc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Wed, 12 Jul 2023 17:06:12 +0800 Subject: [PATCH 06/19] TODO: check if datas have be pushed into sls --- source/tools/monitor/unity/httplib/coMetrics.lua | 4 +++- source/tools/monitor/unity/sls_metric/native/metricSnappy.go | 2 +- source/tools/monitor/unity/sls_metric/native/test_sls.go | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index af8b8494..bf54fdca 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -72,6 +72,7 @@ function CcoMetrics:trans(msgs) --return stream return self.foxffi.string(data, data_len) + --return "hello world" end function CcoMetrics:pack(body) @@ -81,7 +82,8 @@ function CcoMetrics:pack(body) Host = self._host, ["Content-Encoding"] = "snappy", ["Content-Type"] = "application/x-protobuf", - ["Content-Length"] = #body, + ["X-Prometheus-Remote-Write-Version"] = "0.1.0", + --["Content-Length"] = #body, ["Authorization"] = "Basic " .. base64.encode(self._ak .. ":"..self._sk) } diff --git a/source/tools/monitor/unity/sls_metric/native/metricSnappy.go b/source/tools/monitor/unity/sls_metric/native/metricSnappy.go index ad45f956..eeded249 100644 --- a/source/tools/monitor/unity/sls_metric/native/metricSnappy.go +++ b/source/tools/monitor/unity/sls_metric/native/metricSnappy.go @@ -33,7 +33,7 @@ func metricSnappy(prome_ptr *string, ret *[]byte) int { // seperate data sep := "[{} ]" result := regexp.MustCompile(sep).Split(metric, -1) - fmt.Println(result) +// fmt.Println(result) if (len(result)!=4){ continue } diff --git a/source/tools/monitor/unity/sls_metric/native/test_sls.go b/source/tools/monitor/unity/sls_metric/native/test_sls.go index 78497801..f65dbd6e 100644 --- a/source/tools/monitor/unity/sls_metric/native/test_sls.go +++ b/source/tools/monitor/unity/sls_metric/native/test_sls.go @@ -101,6 +101,7 @@ func MockRemoteWrite() { // data, _ := proto.Marshal(&prompb.WriteRequest{Timeseries: timeSeries}) // bufBody := snappy.Encode(nil, data) + fmt.Println(bufBody) rwR, err := http.NewRequest("POST", Url, ioutil.NopCloser(bytes.NewReader(bufBody))) rwR.Header.Add("Content-Encoding", "snappy") rwR.Header.Set("Content-Type", "application/x-protobuf") -- Gitee From d4f0dc6b363c3235a35ebd2bff5dc631337210d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Wed, 12 Jul 2023 20:17:31 +0800 Subject: [PATCH 07/19] modify gitignore --- source/tools/monitor/unity/httplib/coMetrics.lua | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index bf54fdca..776017e1 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -26,6 +26,8 @@ function CcoMetrics:_init_(fYaml) self._sk = 2 self._transPro = CtransPro.new(self._instance, fYaml, false, false) + self._url = "http://127.0.0.1:3330/api/v1/write" + -- go ffi local ffi = require("sls_metric.native.ffi_lua") self.ffi = ffi.ffi @@ -84,7 +86,7 @@ function CcoMetrics:pack(body) ["Content-Type"] = "application/x-protobuf", ["X-Prometheus-Remote-Write-Version"] = "0.1.0", --["Content-Length"] = #body, - ["Authorization"] = "Basic " .. base64.encode(self._ak .. ":"..self._sk) + --["Authorization"] = "Basic " .. base64.encode(self._ak .. ":"..self._sk) } local heads = self:packCliHeaders(head) -- Gitee From 0463e28150ce8852fc2dd4c6dfa6b1de69577eed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Wed, 12 Jul 2023 20:18:39 +0800 Subject: [PATCH 08/19] modify gitignore --- .gitignore | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index bfe50ecd..24ddc157 100644 --- a/.gitignore +++ b/.gitignore @@ -7,8 +7,10 @@ *.ko.cmd *.idea sync.sh -/.DS_Store -/.idea +.DS_Store +**/.DS_Store +.idea/ +**/.idea Module.symvers modules.builtin modules.order -- Gitee From 3c8f8ad4b0ee9e2a05f9ff2887e942f93476b8b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Fri, 14 Jul 2023 14:07:14 +0800 Subject: [PATCH 09/19] error:socket close. --- .../tools/monitor/unity/httplib/coHttpCli.lua | 19 +++++++---- .../tools/monitor/unity/httplib/coMetrics.lua | 34 +++++++++++-------- .../unity/sls_metric/native/test_sls.go | 14 ++++---- 3 files changed, 39 insertions(+), 28 deletions(-) diff --git a/source/tools/monitor/unity/httplib/coHttpCli.lua b/source/tools/monitor/unity/httplib/coHttpCli.lua index 9718385d..a1f45f29 100644 --- a/source/tools/monitor/unity/httplib/coHttpCli.lua +++ b/source/tools/monitor/unity/httplib/coHttpCli.lua @@ -104,6 +104,7 @@ local function installFd(ip, port) end local function setupSocket(host, port) + print(host) local ip = getIp(host) if ip then return installFd(ip, port) @@ -113,7 +114,7 @@ local function setupSocket(host, port) end end -function CcoHttpCli:_init_(fYaml, persistent) +function CcoHttpCli:_init_(config, fYaml, persistent) local res = system:parseYaml(fYaml) local pushTo = res.pushTo self._host = pushTo.host @@ -138,6 +139,7 @@ function CcoHttpCli:connect() else self.status = enumStat.connecting end + print("setup socket success") return true end return false @@ -271,7 +273,7 @@ local function waitChuckSize(fread, s) if string.find(s, "\r\n") then return s end - local add = fread() + local add = fread() --add = nil,后续没有读到数据了 if add then s = s .. add else @@ -283,7 +285,8 @@ end local function readChunks(fread, tReq) local cells = {} local s = tReq.data - local ssize, size + print("s "..s) + local size local len = 1 local bodies, body @@ -291,6 +294,7 @@ local function readChunks(fread, tReq) if len == 0 then break end + print("loop") s = waitChuckSize(fread, s) if s then size, s = unpack(pystring:split(s, "\r\n", 1)) @@ -325,8 +329,9 @@ local function waitHttpRest(fread, tReq) if waitDataRest(fread, rest, tReq) < 0 then return -2 end - else -- chunk mode - if #tReq.data > 0 then + elseif tReq.header["Transfer-Encoding"] then + -- chunk mode + if tReq.header["Transfer-Encoding"]=="chunked" and #tReq.data > 0 then if readChunks(fread, tReq) < 0 then return -3 end @@ -520,8 +525,8 @@ function CcoHttpCli:work(cffi, efd) goto failed end self.status = enumStat.receiving - local fread = self:closureRead(fd) - local tReq = self:result(fread) + local fread = self:closureRead(fd) -- fread() = nil + local tReq = self:result(fread) --nil,fread = nil if tReq then self.status = enumStat.connected self:echo(tReq) diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index 776017e1..0009304d 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -22,12 +22,19 @@ function CcoMetrics:_init_(fYaml) local _metrics = res.metrics self._mhead = _metrics.head self._title = _metrics.title - self._ak = 1 - self._sk = 2 + self._transPro = CtransPro.new(self._instance, fYaml, false, false) - self._url = "http://127.0.0.1:3330/api/v1/write" + local sysconf = system:parseYaml("/etc/sysak/mySLS.yaml") + self._ak = sysconf.config.ak + self._sk = sysconf.config.sk + self._project = sysconf.config.project + self._endpoint = sysconf.config.endpoint + self._metricstore = sysconf.config.metricstore + self._url = "/prometheus/" ..self._project.."/"..self._metricstore.."/api/v1/write" + print(self._url) + self._host = self._project .."." .. self._endpoint -- go ffi local ffi = require("sls_metric.native.ffi_lua") self.ffi = ffi.ffi @@ -40,20 +47,18 @@ function CcoMetrics:_init_(fYaml) end function CcoMetrics:echo(tReq) - if tReq.code ~= "204" then - print(tReq.code, tReq.data) - end + --if tReq.code ~= "204" then + print(tReq.code, tReq.data) + --end end function CcoMetrics:trans(msgs) local res local c = 0 local lines - local bodies = {} lines = msgs.lines res = self._transPro:export(lines) - print("trans finish") local prome = self.ffi.new("GoString") prome.p = res prome.n = #res @@ -74,21 +79,22 @@ function CcoMetrics:trans(msgs) --return stream return self.foxffi.string(data, data_len) - --return "hello world" + --return "sysak_proc_cpu_total{mode=\"user\",instance=\"i-wz9d3tqjhpb8esj8ps4z\"} 0.8\nsysak_proc_cpu_total{mode=\"total\",instance=\"i-wz9d3tqjhpb8esj8ps4z\"} 3960.0\nsysak_proc_cpu_total{mode=\"user2\",instance=\"i-wz9d3tqjhpb8iesj8ps4z\"} 0.9\n" end function CcoMetrics:pack(body) - print("pack start ".. body) local line = self:packCliHead('POST', self._url) + local aksk = self._ak .. ":"..self._sk + local aksk64 = base64.encode(aksk) + print(aksk64) local head = { Host = self._host, ["Content-Encoding"] = "snappy", ["Content-Type"] = "application/x-protobuf", - ["X-Prometheus-Remote-Write-Version"] = "0.1.0", - --["Content-Length"] = #body, - --["Authorization"] = "Basic " .. base64.encode(self._ak .. ":"..self._sk) + --["X-Prometheus-Remote-Write-Version"] = "0.1.0", + ["Content-Length"] = #body, + ["Authorization"] = "Basic " .. aksk64, } - local heads = self:packCliHeaders(head) print("pack finish") return pystring:join("\r\n", {line, heads, body}) diff --git a/source/tools/monitor/unity/sls_metric/native/test_sls.go b/source/tools/monitor/unity/sls_metric/native/test_sls.go index f65dbd6e..6f011c39 100644 --- a/source/tools/monitor/unity/sls_metric/native/test_sls.go +++ b/source/tools/monitor/unity/sls_metric/native/test_sls.go @@ -78,15 +78,15 @@ func metricSnappy(prome_ptr *string, ret *[]byte) int { func MockRemoteWrite() { - project := flag.String("project", "***", "") - metricStore := flag.String("metricstore", "***", "") - endpoint := flag.String("endpoint", "***", "") - akId := flag.String("akid", "***", "") // AccessKey信息。 - akKey := flag.String("aksecret", "***", "") +// project := flag.String("project", "unity-cn-shenzhen", "") +// metricStore := flag.String("metricstore", "qiaoke-work", "") +// endpoint := flag.String("endpoint", "cn-shenzhen.log.aliyuncs.com", "") + akId := flag.String("akid", "LTAI5tMjZfyTSMeAFeA19Xx4", "") // AccessKey信息。 + akKey := flag.String("aksecret", "t0mQM4t3NqOPdiPpDbQwzcpj5a9P0R", "") flag.Parse() - Url := fmt.Sprintf("https://%s.%s/prometheus/%s/%s/api/v1/write", *project, *endpoint, *project, *metricStore) - +// Url := fmt.Sprintf("https://%s.%s/prometheus/%s/%s/api/v1/write", *project, *endpoint, *project, *metricStore) + Url := "http://unity-cn-shenzhen.cn-shenzhen-intranet.log.aliyuncs.com/prometheus/unity-cn-shenzhen/qiaoke-work/api/v1/write" var data []byte; ret := &data; var s = "sysak_proc_cpu_total{mode=\"user\",instance=\"i-wz9d3tqjhpb8esj8ps4z\"} 0.8\nsysak_proc_cpu_total{mode=\"total\",instance=\"i-wz9d3tqjhpb8esj8ps4z\"} 3960.0\nsysak_proc_cpu_total{mode=\"user2\",instance=\"i-wz9d3tqjhpb8iesj8ps4z\"} 0.9\n" -- Gitee From fccdab9f7a94dfc88dbe7c1267c8f5b41c743207 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Fri, 14 Jul 2023 18:41:31 +0800 Subject: [PATCH 10/19] todo:coHttpCliWithIns,coInflux --- source/tools/monitor/unity/beeQ/pushTo.lua | 2 + source/tools/monitor/unity/beeQ/run.sh | 2 +- .../tools/monitor/unity/httplib/coHttpCli.lua | 58 +++++++++---------- .../tools/monitor/unity/httplib/coMetrics.lua | 10 +++- 4 files changed, 40 insertions(+), 32 deletions(-) diff --git a/source/tools/monitor/unity/beeQ/pushTo.lua b/source/tools/monitor/unity/beeQ/pushTo.lua index 22a73db6..e06de753 100644 --- a/source/tools/monitor/unity/beeQ/pushTo.lua +++ b/source/tools/monitor/unity/beeQ/pushTo.lua @@ -20,7 +20,9 @@ function work(fd, fYaml) Metrics = function(fYaml) return coMetrics.new(fYaml) end } local c = _funcs[to](fYaml) + --local c = _funcs[to]("/etc/sysak/base.yaml") frame:poll(c) + print("end push.") return 0 end diff --git a/source/tools/monitor/unity/beeQ/run.sh b/source/tools/monitor/unity/beeQ/run.sh index 1f228ae7..97b5be76 100755 --- a/source/tools/monitor/unity/beeQ/run.sh +++ b/source/tools/monitor/unity/beeQ/run.sh @@ -18,7 +18,7 @@ yaml_path=$1 [ ! $yaml_path ] && yaml_path="/etc/sysak/base.yaml" #download sysak.ko -sysak -oss -d +#sysak -oss -d echo $yaml_yaml_path ./unity-mon $yaml_path diff --git a/source/tools/monitor/unity/httplib/coHttpCli.lua b/source/tools/monitor/unity/httplib/coHttpCli.lua index a1f45f29..29ba6030 100644 --- a/source/tools/monitor/unity/httplib/coHttpCli.lua +++ b/source/tools/monitor/unity/httplib/coHttpCli.lua @@ -114,17 +114,17 @@ local function setupSocket(host, port) end end -function CcoHttpCli:_init_(config, fYaml, persistent) - local res = system:parseYaml(fYaml) - local pushTo = res.pushTo +function CcoHttpCli:_init_(pushTo, persistent) + --local res = system:parseYaml(fYaml) + --local pushTo = res.pushTo self._host = pushTo.host self._port = pushTo.port or 80 self._url = pushTo.url or "/" self._persistent = persistent local Cidentity = require("beaver.identity") - local inst = Cidentity.new(fYaml) - self._instance = inst:id() + --local inst = Cidentity.new(fYaml) + --self._instance = inst:id() self.status = enumStat.closed end @@ -153,30 +153,30 @@ function CcoHttpCli:trans(msgs, body, filter) return "" end -function CcoHttpCli:addInstance(line) -- add instance id for line index. - local cells = line.ls - local hasInstance = false - - if cells then - for _, cell in ipairs(cells) do - if cell.name == "instance" then - hasInstance = true - end - end - end - - if not hasInstance then - local cell = { - name = "instance", - index = self._instance - } - if cells then - table.insert(cells, cell) - else - line.ls = {cell} - end - end -end +--function CcoHttpCli:addInstance(line) -- add instance id for line index. +-- local cells = line.ls +-- local hasInstance = false +-- +-- if cells then +-- for _, cell in ipairs(cells) do +-- if cell.name == "instance" then +-- hasInstance = true +-- end +-- end +-- end +-- +-- if not hasInstance then +-- local cell = { +-- name = "instance", +-- index = self._instance +-- } +-- if cells then +-- table.insert(cells, cell) +-- else +-- line.ls = {cell} +-- end +-- end +--end function CcoHttpCli:pack(body) local line = self:packCliHead('GET', self._url) diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index 0009304d..7923f59d 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -17,7 +17,7 @@ local base64 = require("base64") local CcoMetrics = class("coMetrics", CcoHttpCli) function CcoMetrics:_init_(fYaml) - CcoHttpCli._init_(self, fYaml) + local res = system:parseYaml(fYaml) local _metrics = res.metrics self._mhead = _metrics.head @@ -33,8 +33,14 @@ function CcoMetrics:_init_(fYaml) self._endpoint = sysconf.config.endpoint self._metricstore = sysconf.config.metricstore self._url = "/prometheus/" ..self._project.."/"..self._metricstore.."/api/v1/write" - print(self._url) self._host = self._project .."." .. self._endpoint + + local pushMetrics = { + host = self._host, + url = self._url, + port = 80 + } + CcoHttpCli._init_(self, pushMetrics) -- go ffi local ffi = require("sls_metric.native.ffi_lua") self.ffi = ffi.ffi -- Gitee From 0f2aedce51287ace8b7a8aedafcb3fe05a2d8541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 11:12:17 +0800 Subject: [PATCH 11/19] add coHttpCliInst --- .../tools/monitor/unity/httplib/coHttpCli.lua | 7 +-- .../monitor/unity/httplib/coHttpCliInst.lua | 44 +++++++++++++++++++ .../tools/monitor/unity/httplib/coInflux.lua | 18 ++++++-- .../tools/monitor/unity/httplib/coMetrics.lua | 12 +++-- 4 files changed, 68 insertions(+), 13 deletions(-) create mode 100644 source/tools/monitor/unity/httplib/coHttpCliInst.lua diff --git a/source/tools/monitor/unity/httplib/coHttpCli.lua b/source/tools/monitor/unity/httplib/coHttpCli.lua index 29ba6030..451f7c1d 100644 --- a/source/tools/monitor/unity/httplib/coHttpCli.lua +++ b/source/tools/monitor/unity/httplib/coHttpCli.lua @@ -115,17 +115,12 @@ local function setupSocket(host, port) end function CcoHttpCli:_init_(pushTo, persistent) - --local res = system:parseYaml(fYaml) - --local pushTo = res.pushTo + self._host = pushTo.host self._port = pushTo.port or 80 self._url = pushTo.url or "/" self._persistent = persistent - local Cidentity = require("beaver.identity") - --local inst = Cidentity.new(fYaml) - --self._instance = inst:id() - self.status = enumStat.closed end diff --git a/source/tools/monitor/unity/httplib/coHttpCliInst.lua b/source/tools/monitor/unity/httplib/coHttpCliInst.lua new file mode 100644 index 00000000..4481f2d6 --- /dev/null +++ b/source/tools/monitor/unity/httplib/coHttpCliInst.lua @@ -0,0 +1,44 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by wrp. +--- DateTime: 2023/7/17 09:45 +--- + +require("common.class") + +local CcoHttpCli = require("httplib.coHttpCli") + +local CcoHttpCliInst = class("coHttpCliInst", CcoHttpCli) + +function CcoHttpCliInst:_init_(instance, pushTo, persistent) + CcoHttpCli._init_(self, pushTo ,persistent) + + self._instance = instance +end + +function CcoHttpCliInst:addInstance(line) -- add instance id for line index. + local cells = line.ls + local hasInstance = false + + if cells then + for _, cell in ipairs(cells) do + if cell.name == "instance" then + hasInstance = true + end + end + end + + if not hasInstance then + local cell = { + name = "instance", + index = self._instance + } + if cells then + table.insert(cells, cell) + else + line.ls = {cell} + end + end +end + +return CcoHttpCliInst \ No newline at end of file diff --git a/source/tools/monitor/unity/httplib/coInflux.lua b/source/tools/monitor/unity/httplib/coInflux.lua index 6b00a4c9..61f8e863 100644 --- a/source/tools/monitor/unity/httplib/coInflux.lua +++ b/source/tools/monitor/unity/httplib/coInflux.lua @@ -5,14 +5,26 @@ --- require("common.class") -local CcoHttpCli = require("httplib.coHttpCli") +local CcoHttpCliInst = require("httplib.coHttpCliInst") local pystring = require("common.pystring") local lineParse = require("common.lineParse") +local system = require("common.system") -local CcoInflux = class("coInflux", CcoHttpCli) +local CcoInflux = class("coInflux", CcoHttpCliInst) function CcoInflux:_init_(fYaml) - CcoHttpCli._init_(self, fYaml) + local res = system:parseYaml(fYaml) + local pushInflux = { + host = res.pushTo.host, + url = res.pushTo.url, + port = res.pushTo.port + } + + local Cidentity = require("beaver.identity") + local inst = Cidentity.new(fYaml) + local instance = inst:id() + + CcoHttpCliInst._init_(self, instance, pushInflux) end function CcoInflux:echo(tReq) diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index 7923f59d..eb45b89f 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -6,7 +6,7 @@ require("common.class") -local CcoHttpCli = require("httplib.coHttpCli") +local CcoHttpCliInst = require("httplib.coHttpCliInst") local system = require("common.system") local pystring = require("common.pystring") local lineParse = require("common.lineParse") @@ -14,7 +14,7 @@ local CtransPro = require("common.transPro") local base64 = require("base64") -local CcoMetrics = class("coMetrics", CcoHttpCli) +local CcoMetrics = class("coMetrics", CcoHttpCliInst) function CcoMetrics:_init_(fYaml) @@ -23,7 +23,9 @@ function CcoMetrics:_init_(fYaml) self._mhead = _metrics.head self._title = _metrics.title - self._transPro = CtransPro.new(self._instance, fYaml, false, false) + local Cidentity = require("beaver.identity") + local inst = Cidentity.new(fYaml) + local instance = inst:id() local sysconf = system:parseYaml("/etc/sysak/mySLS.yaml") @@ -40,7 +42,7 @@ function CcoMetrics:_init_(fYaml) url = self._url, port = 80 } - CcoHttpCli._init_(self, pushMetrics) + CcoHttpCliInst._init_(self, instance, pushMetrics) -- go ffi local ffi = require("sls_metric.native.ffi_lua") self.ffi = ffi.ffi @@ -50,6 +52,8 @@ function CcoMetrics:_init_(fYaml) local foxFFI = require("tsdb.native.foxffi") self.foxffi = foxFFI.ffi self.foxcffi = foxFFI.cffi + + self._transPro = CtransPro.new(instance, fYaml, false, false) end function CcoMetrics:echo(tReq) -- Gitee From fc9c73cd0825e8ec4815fc10c891c354bbdc4695 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 11:21:20 +0800 Subject: [PATCH 12/19] remove **/.DS_Store --- .DS_Store | Bin 6148 -> 0 bytes source/.DS_Store | Bin 6148 -> 0 bytes source/tools/.DS_Store | Bin 6148 -> 0 bytes source/tools/monitor/.DS_Store | Bin 6148 -> 0 bytes 4 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 .DS_Store delete mode 100644 source/.DS_Store delete mode 100644 source/tools/.DS_Store delete mode 100644 source/tools/monitor/.DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 0a05c2ecc3f111dbd7f64aebfc0261ff29bde874..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK%}T>S5Z-NTn^J@v6nb3nTCjf#;w8lT0!H+pQX3OA7_+5m?4cBL))(?gd>&_Z zH-})rn~0r(-EVe&b~7Jje;8xj&4K}AHe<|!hR9K=5Hwf1Y9<(wt2rK6=&#bbA4|Vt zqQ7XuZ*Q`cNtUq%D}VooKaZny+3$byTD`H;Y*{U&%Pe(giyItWN*Viw zKJ%}la5c5}&SbKjMM=0&2~iM2$nABM1ajrdED2JT>uHD8w%Sv>yIv2*M?Endjy659 zJ{k6VVmvzDY}(fT!Qtt}^f`V> Xm}|sY(5}(}=^~&Ap^g~%1qQwVpPWoB diff --git a/source/.DS_Store b/source/.DS_Store deleted file mode 100644 index d1dfa3a58defaccdf0ca40128129ee9309e826df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK%}T>S5Z<+|O({YS3Oz1(E!aN=@e*Qv0V8@)sR=0>jM>tp=1>Yb>kIiLK94iI z8)z|j6tOd9_nV!c-OLBwAI2DW7h#_yR%&ON5@?;7z|fku{<60 zx?(guS*=>u!Qs)_<>WbjN#vU*k^|#P_6(Nr4$4|ZuiiX~W%3BtGNX(nBnF59Vt^Rf zP6o_*V70fie5#rlAO?P50QUz04bd@JXjEGVba;J6e;pA8bbL!73WJWpLL+!UxK0Js zsoXpS5Z<-brW7Fug&r5Y7VMvbcnPt-fDt{Y)PxibrrDCD_D~8r>kIiLK94iI z8?c&#ClNaXn{Rf0c6UC={xHV4I}dw|*^Ds@8X`xfLeO04+A_h2T#b=4$#VDD1O zI4E^LxQZr=vAuUDliZJzNvaZ}Z~`H>*HIG6g)8Stn5kS(JFKSF9NX>XvNt^Hh<<;t z>WJk@zuOVR!SQO(z!Ye3Ws(SX)B$mkoc*?9YnvfVE z28aP-V6zx7=YZAPtg@+EVt^R<0Ry-{2xy3o!9t_jI^cuXXY|(*Q9#GH1fnqL7%Vh` z2ZZZXK%L6X6NBq?unQCC7%VjEbjH=pFpinIe7tZqJJ^K^XWY?9Ut)k5SZAQ7yEdNx z=kUu^KJwR7s7DMC1OJQxULScQ7m6}x>$mdotQFAip`l=0feHxdYnK4%;6Bn;PVE<{ aL!4u<(1@d;U8MukML-ckA7bDa82AA0dra8? diff --git a/source/tools/monitor/.DS_Store b/source/tools/monitor/.DS_Store deleted file mode 100644 index a14a589358826038c45801419f1756d7f50b5e8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKOH0E*5Z>*>rW7Fug&r5Y7VJwwyo6f+fDt{Y)Pxib#%yU4i`#=0y6eel6`^hWST79QsHLR9(=RV4Xn|f)MjJ){`jxME){6hEq zt8luQ*n4L(PQ5Um&Q(GfOd;gBZzJdXD9rCXxf=N_Gtv@D9paMKA6=j%54*)*_>bBqRoi0b+m{ z*iHt_d0@4+vwW(W7$63IU;y_A0S(bHm}^v92XuISMt=;ek%{pS^@1I8VbhcsDOaJaS4C{?jvpG)P8|F#5o3Y VjW`S1RXQMD1Qa3E5d*)#z!xvqODq5Y -- Gitee From 81aac64dfb54149ed459942ad0bed68dcd6ff63a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 11:33:20 +0800 Subject: [PATCH 13/19] remove /.idea & **/.DS_Store --- .DS_Store | Bin 6148 -> 0 bytes .idea/.gitignore | 8 -------- .idea/misc.xml | 18 ------------------ .idea/vcs.xml | 6 ------ source/.DS_Store | Bin 6148 -> 0 bytes source/tools/.DS_Store | Bin 6148 -> 0 bytes source/tools/monitor/.DS_Store | Bin 6148 -> 0 bytes 7 files changed, 32 deletions(-) delete mode 100644 .DS_Store delete mode 100644 .idea/.gitignore delete mode 100644 .idea/misc.xml delete mode 100644 .idea/vcs.xml delete mode 100644 source/.DS_Store delete mode 100644 source/tools/.DS_Store delete mode 100644 source/tools/monitor/.DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index b639f68ef81e47f5d1ca0c3e13497b3d586b058e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK%}T>S5Z<-5O({YT3Oz1(Em&hwikDF93mDOZN=;1AV9b^zHHT8jSzpK}@p+ut z-5i1iZz6UEcE8#A+0A^A{b7vp$s#yptj8F$pdoTp)(D!{y0%O(B3E-fu+T5ExgSe^ z%|w6Egx}s`8Ix?mQda-|4}Ts_a7bRh;5~3i4klX7h31l&mizLWYuB#nZ$Lh>_{pHdgjR(TEPgVo5 z9NWWz7#$t2Rvl|^|KRju_8h+?@=X)TfpaB01}k_6rB>6cnHGaRI!A_05L!e z5CfaXfH@1S?&g(F6%zx*zz+=I{ve>0lQo&M{bO)ai_?m0=#Ua`kxOYIU#+70$S$k$Pf)7^pMQ(8C^{|L5?_ ztbOFyQ)omC5Ci{=0p6Ut(+L!1&em_`;aMx7-9tmcxDpi*&})|f7~nqAS5EC0s6(7% Xu+)gNpk1W{(nUZKLLD*i3k-Y#X)jDR diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 13566b81..00000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Editor-based HTTP Client requests -/httpRequests/ -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index 53624c9e..00000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 35eb1ddf..00000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/source/.DS_Store b/source/.DS_Store deleted file mode 100644 index fe62bc3d37d7e43ee3c765a76137456f136a5618..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK%}T>S5Z>*NO({YS3Oz1(Em&hwikA@U3mDOZN=-=7V9b^#wTDv3SzpK}@p+ut z-9U@Mqlld;yWi~m>}Edb{xHV4H;;}Ovl(L+G(?U{g`m08RWreeT+NY%i)9 zZ<_Gin=EG%ehFLu{*Q2)#97|&fAU(r(cEcSEvsYQ`%iM==RrQtykK^Vqbn(su+)R_ zI-V@X_TITn^B_(qGnEiW69~DxiPK0fJULIJOy&C8VYRLH*zPWu&S2ORj&r)|iRIAg z_r&1%WVLEr`v-?-m*eN;C6#ZQNDhoE*)>?gJ1A=vz525>k?A8?%ZxITkQg8ahyh|? zI~g$Nfz{d0@~LWKfEf6J0o)%1G(^{6p;2ue(BbtN{S8DE(D5ySC=9v=3yt6b;W`yi zr*iYe;5r@b!o;}-3ynIRakVncV^%I7FI=q-cA>%U3u0s{KRB>)Dvk93t&`vvL{=Nc?D U;w)%a>40<*P=ruN4EzEEUjs->9{>OV diff --git a/source/tools/.DS_Store b/source/tools/.DS_Store deleted file mode 100644 index 12272494a9145ab77e6821d51a35aa9e656937e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK%}T>S5Z-O8O({YT3Oz1(Em&hwikDF93mDOZN=-=7V45vSY7V84v%Zi|;`2DO zy8){?coMNQu=!@^XLsj=>vQO)mK6u{zc@(BuzyHo_^~TnA(`s66>&|_Yxtn>}A{}|j4fZaj zjQmpf{Ht)9PddA2GS0j(o+c_G45kordmYAs%tvw&2dT<+wZm#ztx2c5T-t+SPuTX! zswb91yWbOoqvO@8W$o=BoL)?xqFF3oG?g4!SF&TUgjZ0$RQ2p8aU|mh@RV6)G$AoS z3=jjvz-BRE&H<~vS!GkT!~iky0|sz^5YP}EgM~)5b-)L&&**O;qJWNX2}EJgF<58> z4+z((fI5|%CkEH)U>7FNF<5BS>5QwHVH`7a`FP=KcCZT-&bXtIzQh1Au+BhTcRP6g zpTjRx`N&^Sp&l_n4E!?&cw_92M^KbGTfdcuXRUyC4-Ez53RFNqU%LcA2ltV#a%#Uo a9pW5=g+?3&?J6CRE&_@W`Va%Zz`zH${7m8i diff --git a/source/tools/monitor/.DS_Store b/source/tools/monitor/.DS_Store deleted file mode 100644 index 54403a1caa441bc5047ab36847f73aef327fef34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK%}T>S5Z<+|O({YS3Oz1(Em&hwikDF93mDOZN=-=7V9b^#u}CT8tS{t~_&m<+ zZlJ~BQN+%`?l(I>yO|HNKa4Rx%)>**Y{r-c4UwZ#A!x32ZJA(1uI6|R=IJzuWl%BA z-!$R3H(1UR7O{-2e*Z@>jiWT{^*;Glt=`yfT1~5M-Fc64?qz2*c_=ytv!aFD{6}@<~B$mkoSj&tul8_i628aP- zU^5vo=YiGU%<`#fVt^RkQQN(8lxs9DbR~ zNB(*Wjfeqa;GZ$T>mzS8grdyZ`mH=XYX!7>Xebz0paKH=+9d!6xQ}#{Q~L$#5a${! VG~z61SLuLs5m1CsM-2P|17G=VOEmxh -- Gitee From 179263aefdef71d4e2f89095e1c3787d3d8c9225 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 11:43:23 +0800 Subject: [PATCH 14/19] remove **/.idea --- .idea/.gitignore | 8 -------- .idea/misc.xml | 18 ------------------ .idea/vcs.xml | 7 ------- 3 files changed, 33 deletions(-) delete mode 100644 .idea/.gitignore delete mode 100644 .idea/misc.xml delete mode 100644 .idea/vcs.xml diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 13566b81..00000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Editor-based HTTP Client requests -/httpRequests/ -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index 53624c9e..00000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index ca06ea04..00000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file -- Gitee From 47d41879982675cf0891933c6cfcd89e20d1cfcd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 11:48:17 +0800 Subject: [PATCH 15/19] modify gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 40a844cf..4b4d960e 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,8 @@ *.ko *.ko.cmd *.idea +.idea/ +**/.DS_Store Module.symvers modules.builtin modules.order -- Gitee From 356ab2c4a243a387ae11dcbc97f8441b60f9e691 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 11:54:36 +0800 Subject: [PATCH 16/19] modify .gitignore --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 4b4d960e..fa19e01d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,7 @@ *.ko *.ko.cmd *.idea -.idea/ +**/.idea/ **/.DS_Store Module.symvers modules.builtin -- Gitee From f85eb3c9547259b0fbc283699bf11a0cd6a8cb02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 16:46:33 +0800 Subject: [PATCH 17/19] add metrics --- source/tools/monitor/unity/beeQ/pushTo.lua | 5 +++- .../monitor/unity/httplib/coAutoMetrics.lua | 27 ++++++++++++++++++ .../tools/monitor/unity/httplib/coHttpCli.lua | 28 ------------------- source/tools/monitor/unity/httplib/test.lua | 9 ++++++ 4 files changed, 40 insertions(+), 29 deletions(-) create mode 100644 source/tools/monitor/unity/httplib/coAutoMetrics.lua create mode 100644 source/tools/monitor/unity/httplib/test.lua diff --git a/source/tools/monitor/unity/beeQ/pushTo.lua b/source/tools/monitor/unity/beeQ/pushTo.lua index e06de753..c4d68eff 100644 --- a/source/tools/monitor/unity/beeQ/pushTo.lua +++ b/source/tools/monitor/unity/beeQ/pushTo.lua @@ -10,14 +10,17 @@ local system = require("common.system") local coCli = require("httplib.coCli") local coInflux = require("httplib.coInflux") local coMetrics = require("httplib.coMetrics") +local coAutoMetrics =require("httplib.coAutoMetrics") function work(fd, fYaml) local conf = system:parseYaml(fYaml) local to = conf.pushTo.to + print(to) local frame = coCli.new(fd) local _funcs = { Influx = function(fYaml) return coInflux.new(fYaml) end, - Metrics = function(fYaml) return coMetrics.new(fYaml) end + Metrics = function(fYaml) return coMetrics.new(fYaml) end, + AutoMetrics = function(fYaml) return coAutoMetrics.new(fYaml) end } local c = _funcs[to](fYaml) --local c = _funcs[to]("/etc/sysak/base.yaml") diff --git a/source/tools/monitor/unity/httplib/coAutoMetrics.lua b/source/tools/monitor/unity/httplib/coAutoMetrics.lua new file mode 100644 index 00000000..b7d87aa6 --- /dev/null +++ b/source/tools/monitor/unity/httplib/coAutoMetrics.lua @@ -0,0 +1,27 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by wrp. +--- DateTime: 2023/7/17 15:26 +--- + +require("common.class") + +local CcoMetrics = require("httplib.coMetrics") + +local CcoAutoMetrics = class("coAutoMetrics", CcoMetrics) + +function CcoAutoMetrics:_init_(fYaml) + CcoMetrics._init_(self,fYaml) + + local ts = io.popen('curl 100.100.100.200/latest/meta-data/region-id') + local regionid = ts:read("*all") + + self._project = "sysom-metrics-" .. regionid + self._endpoint = regionid .. "-intranet.log.aliyuncs.com" + self._metricstore = "auto" + self._url = "/prometheus/" ..self._project.."/"..self._metricstore.."/api/v1/write" + self._host = self._project .."." .. self._endpoint + +end + +return CcoAutoMetrics \ No newline at end of file diff --git a/source/tools/monitor/unity/httplib/coHttpCli.lua b/source/tools/monitor/unity/httplib/coHttpCli.lua index 451f7c1d..83c7b1a2 100644 --- a/source/tools/monitor/unity/httplib/coHttpCli.lua +++ b/source/tools/monitor/unity/httplib/coHttpCli.lua @@ -104,7 +104,6 @@ local function installFd(ip, port) end local function setupSocket(host, port) - print(host) local ip = getIp(host) if ip then return installFd(ip, port) @@ -134,7 +133,6 @@ function CcoHttpCli:connect() else self.status = enumStat.connecting end - print("setup socket success") return true end return false @@ -148,30 +146,6 @@ function CcoHttpCli:trans(msgs, body, filter) return "" end ---function CcoHttpCli:addInstance(line) -- add instance id for line index. --- local cells = line.ls --- local hasInstance = false --- --- if cells then --- for _, cell in ipairs(cells) do --- if cell.name == "instance" then --- hasInstance = true --- end --- end --- end --- --- if not hasInstance then --- local cell = { --- name = "instance", --- index = self._instance --- } --- if cells then --- table.insert(cells, cell) --- else --- line.ls = {cell} --- end --- end ---end function CcoHttpCli:pack(body) local line = self:packCliHead('GET', self._url) @@ -280,7 +254,6 @@ end local function readChunks(fread, tReq) local cells = {} local s = tReq.data - print("s "..s) local size local len = 1 local bodies, body @@ -289,7 +262,6 @@ local function readChunks(fread, tReq) if len == 0 then break end - print("loop") s = waitChuckSize(fread, s) if s then size, s = unpack(pystring:split(s, "\r\n", 1)) diff --git a/source/tools/monitor/unity/httplib/test.lua b/source/tools/monitor/unity/httplib/test.lua new file mode 100644 index 00000000..50f6e360 --- /dev/null +++ b/source/tools/monitor/unity/httplib/test.lua @@ -0,0 +1,9 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by wrp. +--- DateTime: 2023/7/17 15:42 +--- + +local ts = io.popen('curl 100.100.100.200/latest/meta-data/region-id') +local s = ts:read("*all") +print("s "..s) -- Gitee From c75f115eedfa25aed259fe6451fbd664c4050861 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 17:10:47 +0800 Subject: [PATCH 18/19] add metrics --- source/tools/monitor/unity/httplib/coMetrics.lua | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/source/tools/monitor/unity/httplib/coMetrics.lua b/source/tools/monitor/unity/httplib/coMetrics.lua index eb45b89f..eaf97761 100644 --- a/source/tools/monitor/unity/httplib/coMetrics.lua +++ b/source/tools/monitor/unity/httplib/coMetrics.lua @@ -27,13 +27,11 @@ function CcoMetrics:_init_(fYaml) local inst = Cidentity.new(fYaml) local instance = inst:id() - local sysconf = system:parseYaml("/etc/sysak/mySLS.yaml") - - self._ak = sysconf.config.ak - self._sk = sysconf.config.sk - self._project = sysconf.config.project - self._endpoint = sysconf.config.endpoint - self._metricstore = sysconf.config.metricstore + self._ak = res.pushTo.ak + self._sk = res.pushTo.sk + self._project = res.pushTo.project + self._endpoint = res.pushTo.endpoint + self._metricstore = res.pushTo.metricstore self._url = "/prometheus/" ..self._project.."/"..self._metricstore.."/api/v1/write" self._host = self._project .."." .. self._endpoint -- Gitee From d4ec3cf3582decdb5b603c73a60a0c4eb4f1bc7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=94=E5=8F=AF?= Date: Mon, 17 Jul 2023 17:20:16 +0800 Subject: [PATCH 19/19] add metrics --- .gitignore | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 24ddc157..fa19e01d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,11 +6,8 @@ *.ko *.ko.cmd *.idea -sync.sh -.DS_Store +**/.idea/ **/.DS_Store -.idea/ -**/.idea Module.symvers modules.builtin modules.order -- Gitee