#灵感 ![[Pasted image 20250106141615.png]] 内网 数据库相关 服务器 IP:[[192.168.1.177](http://192.168.1.177)]([http://192.168.1.177/](http://192.168.1.177/)) 用户:root 密码:cZr8YTtp MySQL 端口:3306 数据库root密码:rootpwd 局域网 数据库 连接 示意图:可以看到,数据库中,包含俩app应用,对应的子库,分别是app10000和app10001; 然后,其中的表,是根据日期维度,进行记录 ![[Pasted image 20250124140041.png]] 数据库软件: ![[Pasted image 20250124163251.png]] ![[img_v3_02i9_17bd156a-13ab-43c8-ac13-40c1c07c8dbh.jpg]] ![[img_v3_02ia_428354bd-8a7a-481e-9085-ca7632dffc4h.jpg]] ![[img_v3_02ia_349af056-09bd-4870-afa5-836814c2c63h.jpg]] 外网 服务器 [[44.204.198.64](http://44.204.198.64)]([http://44.204.198.64](http://44.204.198.64)) root yxn~Sr2@#hz3 对应的MySQL密码 为 root Lg753951rsdgs ``` 44.204.198.64 root yxn~Sr2@#hz3 Lg753951rsdgs ``` 其中,上报的脚本逻辑,保存在这个git目录 ``` C:\Users\admin\Downloads\code\git\lgreporter\server\ ``` 核心逻辑脚本,在这里 ![[Pasted image 20250124115602.png]] 其中的配置信息相关,在这里; 监听的端口,默认配置的,监听端口,是82,如果要测端口相关,参考[[Telnet 端口测试]]; 而larkpath数据容器,key和value对应的,分别是数据库子库名称,还有推送过去的,飞书机器人链接 ![[Pasted image 20250124120006.png]] 跟飞书机器人的webhook,是对应的 ![[Pasted image 20250124162436.png]] 会有go的嵌套结构,其中 LarkReport是用于,在lark飞书,推送和显示的字段 ![[Pasted image 20250124162606.png]] 这里是开服务器相关,可以看到,是读上述json相关配置的,监听地址,和端口 ![[Pasted image 20250124162847.png]] 这里是构建飞书,要发送的消息体 ![[Pasted image 20250124163210.png]] 服务端的消息转发,也可以屏蔽,特定字段; 弄一个字符数组,判断Msg字段的数据,是否包含其中的字符,然后通过设定布尔,continue跳过特定字段,完成筛选逻辑 ![[Pasted image 20250124163508.png]] 筛选后,也还会继续走,下发逻辑,就会导致,发了空字符串出去,这里加一个字符串判断,return就好 ![[Pasted image 20250124163704.png]] 服务端,本地自测开启,样式参考: ![[Pasted image 20250124164103.png]] 补充一下,go服务端相关依赖: ![[Pasted image 20250124164204.png]] 来到客户端测试,需要注意的是,参考外网链接,需要加一下,域名的子层级`/report` ``` 外网:https://creporter.hummingbirdgamesltd.com/report 内网(不是https签名认证的域名,无妨):http://192.168.3.8:82/report ``` ![[Pasted image 20250124164257.png]] 本地局域网测试: 当前指向的是,10000号app的数据库仓库; 这里的Debug.LogError是测试下发,是否成功 ![[Pasted image 20250124164433.png]] 实测,飞书机器人转发,是正常的 ![[Pasted image 20250124164749.png]] 然后,就要部署到外网: 直接点这个bat批处理即可,生成linux可执行程序 ![[Pasted image 20250124164857.png]] ``` shell go env -w GOOS=linux go build -o lgreporter main.go go env -w GOOS=windows ``` 这是外网日志系统服务器,账号密码、参考上述即可: 外网 服务器 [[44.204.198.64](http://44.204.198.64)]([http://44.204.198.64](http://44.204.198.64)) root yxn~Sr2@#hz3 对应的MySQL密码 为 root Lg753951rsdgs ![[Pasted image 20250124164948.png]] 直接找到历史指令: ``` shell history ``` ![[Pasted image 20250124165035.png]] 这一串历史指令,就是需要点击的所有: 跳转到可执行程序路径、查看当前进程使用情况,kill正常中止上报进程,移除可执行程序、通过rz上传,上述生成的可执行程序,参考[[rz 和 sz linux的上传和下载]]、设置权限,nohup无窗口运行程序,同时记录运行信息到`output.log` 、再查看当前运行情况 ![[Pasted image 20250124165132.png]] 完成。 客户端上报 ![[Pasted image 20250411104809.png]] 网络发送的逻辑接口,会有重发机制: ![[Pasted image 20250415101220.png]]