obsidian/笔记文件/2.笔记/日志系统 临时记录.md
2025-04-15 12:00:02 +08:00

4.1 KiB
Raw Blame History

#灵感

!Pasted image 20250106141615.png

内网 数据库相关 服务器 IP[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) root yxn~Sr2@#hz3 对应的MySQL密码 为 root 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

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) root yxn~Sr2@#hz3 对应的MySQL密码 为 root Lg753951rsdgs

!Pasted image 20250124164948.png

直接找到历史指令:

history

!Pasted image 20250124165035.png

这一串历史指令,就是需要点击的所有: 跳转到可执行程序路径、查看当前进程使用情况kill正常中止上报进程移除可执行程序、通过rz上传上述生成的可执行程序参考rz 和 sz、设置权限nohup无窗口运行程序同时记录运行信息到output.log 、再查看当前运行情况

!Pasted image 20250124165132.png

完成。

客户端上报

!Pasted image 20250411104809.png

网络发送的逻辑接口,会有重发机制:

!Pasted image 20250415101220.png