Commit Graph

167 Commits

Author SHA1 Message Date
guo_peixu
8267c9712e 修改生产者和消费者都退出后,共享内存未删除的问题
生产者消费者注册信号处理函数,退出时检查如果没有其它进程使用共享内存,将共享内存删除
2022-06-30 15:16:08 +08:00
guo_peixu
89899d2d0a 修改多线程重复映射同一块共享内存,可能导致进程的线性地址耗尽问题。
一个线程映射共享内存后,将地址存储,其它线程可直接使用,不用重复映射
2022-06-30 11:19:40 +08:00
guo_peixu
a5bffd2fe7 消费者通过注册信号处理函数,在退出时向共享内存中添加状态标记,生产者通过此标记确定消费者是否在运行。删除信号量相关代码 2022-06-29 18:24:51 +08:00
guo_peixu
dab9b5c03d 使用进程间共享的信号量,标记消费者进程是否正在运行 2022-06-28 18:42:05 +08:00
guo_peixu
c059e7479e 修改日志文件的日期错误的问题。删除功能重复的无效代码。 2022-06-24 16:49:55 +08:00
guo_peixu
e13e857381 使用tty命令获取当前终端名称,将日志输出到当前终端 2022-06-23 17:12:25 +08:00
guo_peixu
fada178df2 修改线程获取缓冲区失败问题。
修改共享内存地址映射失败时的判错条件,shmat失败会返回(void *)-1而不是NULL
2022-06-23 14:20:32 +08:00
guo_peixu
4531d74c80 优化共享内存解析格式,减少内存浪费。优化生产者进程的效率。 2022-06-23 11:41:16 +08:00
guo_peixu
775982f2d5 修改日志丢失的问题。缓冲区未遍历完而退出循环,会导致刷新不及时而丢失日志 2022-06-22 19:05:39 +08:00
guo_peixu
7a88ab75ec 在进行snprintf之前,进行缓冲区的判满,提高处理效率。去掉无意义的goto语句 2022-06-22 18:42:59 +08:00
guo_peixu
b94706ac06 启动消费者进程时,支持设置消费指定生产者的日志,支持设置将日志输出到文件或者终端 2022-06-22 17:49:58 +08:00
guo_peixu
3421f97f95 支持输出日志到指定目录 2022-06-22 09:44:55 +08:00
guo_peixu
93c07a240b 使用共享锁来标记环形缓冲区是否正在被使用 2022-06-17 18:14:24 +08:00
guo_peixu
0ce7424fa1 消费者进程启动时,检查是否存在已启动的消费者进程,避免重复启动 2022-06-16 17:11:34 +08:00
guo_peixu
21b84aa885 支持多个生产者进程的场景。当生产者的某个线程抢占环形缓冲区时,使用进程间的信号量代替线程锁来保护共享资源 2022-06-14 16:16:53 +08:00
guo_peixu
30f2094627 修改MESA_log动态库链接可执行程序失败问题。cmake配置中隐藏了动态库中的函数符号导致链接失败,添加这些对外提供的函数符号。 2022-06-13 14:39:44 +08:00
guo_peixu
7faf202791 修改编译问题。并将开源snprintf与MESA_log编译到一起。 2022-06-13 13:00:57 +08:00
guo_peixu
af7c375634 打开开源snprintf和日志消费者进程的编译 2022-06-10 17:26:40 +08:00
guo_peixu
d7b64b4577 提交环形缓冲区添加代码 2022-06-10 16:14:32 +08:00
guo_peixu
65ed1c3a92 提交环形缓冲区相关修改 2022-06-10 16:13:11 +08:00
guo_peixu
08fd550822 添加开源snprintf的相关编译宏 2022-06-08 11:10:41 +08:00
guo_peixu
c0c6a97a13 删除无用代码 2022-06-08 10:54:00 +08:00
guo_peixu
20f3fb58b7 snprintf支持格式化结构体 2022-06-07 16:26:10 +08:00
liuxueli
b677bb6c71 TSG-9690: 适配Rocky Linux8.5 v2.0.9 2022-03-01 13:35:24 +08:00
yangwei
f76af2f036 feat(printf): 使用fprintf输出屏显至stderr,替换printf v2.0.8 2021-06-08 15:34:03 +08:00
杨威
31bd3fed9c Update .gitlab-ci.yml testing源仅debug版开启asan 2020-10-30 23:05:32 +08:00
杨威
9ecf746f0f Update .gitlab-ci.yml 2020-10-15 09:47:55 +08:00
杨威
040ce55a1b Update travis.sh, ASAN using devtoolset-7 2020-10-14 15:02:23 +08:00
liuxueli
cb4ad71c50 编译增加ASAN的选项 v2.0.7 2020-10-09 10:30:54 +08:00
liuxueli
02100e4232 上传debuginfo至sentry 2020-10-09 10:23:26 +08:00
yangwei
63f5231e9f 🐞fix(package.cmake): 修复PROFILE描述错误的bug v2.0.6 2020-09-28 19:59:36 +08:00
yangwei
15fe685383 🦄refactor(tmpfile):
snapshot目录更新至/tmp/MESA_handle_logger,同时增加按1小时回收文件的脚本,rpm安装后将安装至/usr/lib/tmpfiles.d/目录
2020-09-28 19:38:08 +08:00
yangwei
e1057e6d0c 🔧build(cmake/): 增加changelog,并调整version和changelog目录 2020-09-28 16:42:42 +08:00
yangwei
2e4e4dff17 🐞fix(creat_dir): 修复计算待创建目录不包含/时长度计算错误的bug v2.0.5 2020-09-24 15:18:14 +08:00
yangwei
150255033c 🔧build(CMakeLists.txt): 动态链接库链接pthread v2.0.4 2020-09-22 14:26:51 +08:00
yangwei
0f0e55c877 🔧build(CMakeLists.txt):
放弃logger2,重新使用logger作为包名称
v2.0.3 v2.0.3-testing
2020-09-21 21:21:15 +08:00
yangwei
8857f282b9 🌈style(snapshot_handle_info):
兼容logger1行为时,屏显输出handle_name,log_path和level
2020-09-21 21:16:25 +08:00
yangwei
cc0912eed0 🐎ci(.gitlab-ci.yml): 增加testing编译devel包 2020-09-21 21:03:02 +08:00
yangwei
186571e823 UPDATE:logger2行为模式更新:
1、对于logger1的行为,默认使用snapshot文件初始化
2、对于logger2传入null或者无法访问或者错误格式的初始化profile,尝试使用null初始化,默认行为为stdout
2020-09-21 20:42:25 +08:00
yangwei
e39e641103 UPDATE:demo使用动态链接 2020-09-21 20:40:29 +08:00
yangwei
f461cbbc3d UPDATE:versio_map增加导出GIT_VERSION_*符号 2020-09-21 20:39:46 +08:00
yangwei
05a8eded4b UPDATE:zlog代码更新,修复zlog_init传入NULL时导致segfault的bug 2020-09-21 20:39:16 +08:00
yangwei
92815d2d1f 更新ci.yml,使用epel阿里云镜像repo 2020-09-18 15:54:41 +08:00
yangwei
ea4185727b 更新Version.cmake,正确设置GIT_VERSION是否定义的开关 2020-09-17 17:02:14 +08:00
yangwei
7066b2b086 更新写入snapshot默认部分的定义为const static buff 2020-09-17 13:34:02 +08:00
yangwei
52db3f0001 更新snapshot记录的内容,level与rules中名称一致 2020-09-17 13:19:10 +08:00
yangwei
7417fed852 ci中tyum makecache增加fast参数 v2.0.2.1-testing 2020-09-14 17:08:25 +08:00
yangwei
0cb2236be0 cmake IMPORT动态库安装未解决,改回使用静态连接zlog 2020-09-14 16:45:54 +08:00
yangwei
332201d4b0 install zlog.so.1.2 v2.0.2-testing 2020-09-11 18:34:18 +08:00
yangwei
ce403b8ca5 cmake不支持IMPORTED target作为install TARGETS,无法创建zlog soversion连接,更新zlog打包流程,安装和卸载前后使用postinstall和postuninstall执行ldconfig 2020-09-11 11:22:17 +08:00