littlebot
Published on 2025-04-09 / 0 Visits
0

【源码】基于C++的日志收集与分析系统

项目简介

本项目是基于C++开发的日志收集与分析系统,借助FastCGI技术处理HTTP请求,为应用程序提供高效、可靠的日志收集和分析服务。系统支持多种安装方式,还具备定时任务功能,可定期生成日志报告。

项目的主要特性和功能

  1. 日志收集服务:通过HTTP POST请求接收日志数据,存储在指定目录,支持普通日志和崩溃日志收集。
  2. 日志分析功能:对日志文件进行分析,计算日志内容的SHA - 1哈希值并生成汇总报告。
  3. 定时任务:支持每半小时和每天生成日志报告的定时任务。
  4. 守护进程模式:可在守护进程模式下运行,适合长期日志收集任务。
  5. 多种安装方式:支持编译安装、使用Docker镜像安装以及使用公共Docker镜像安装。

安装使用步骤

编译安装

  1. 安装必要的工具和依赖库: bash yum install -y gcc gcc-c++ gcc-g77 boost-devel bzip2
  2. 编译并安装依赖库fast - gci和fastcgipp库。
  3. 编译并安装项目: bash make report make install
  4. 安装并配置Nginx,添加Nginx配置以路由日志请求。
  5. 启动inforeport和crashreport服务。
  6. 启动cron定时任务。

使用Docker镜像安装

  1. 安装Docker: bash curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh systemctl restart docker.service
  2. 制作Docker镜像: bash docker build -t reporter:v1 .
  3. 通过镜像启动容器: bash docker run -it -d \ -p 80:80 -p 8000:8000 \ -v /data/www/reporter-data:/data/www/report \ -v /var/reporter/nginx-logs:/usr/local/nginx/logs \ -v /var/reporter/cron-logs:/var/reporter/logs \ -e TZ=Asia/Shanghai \ --name reporter \ reporter:v1

使用公共Docker镜像安装

  1. 安装Docker: bash curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh systemctl restart docker.service
  2. 获取镜像: bash docker pull jianguankun/reporter
  3. 通过镜像启动容器: bash docker run -it -d \ -p 80:80 -p 8000:8000 \ -v /data/www/reporter-data:/data/www/report \ -v /var/reporter/nginx-logs:/usr/local/nginx/logs \ -v /var/reporter/cron-logs:/var/reporter/logs \ -e TZ=Asia/Shanghai \ --name reporter \ jianguankun/reporter

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】