codex可自动化将分散csv/tsv日志提取指定字段并生成excel汇总表;需确保服务运行、api就绪、数据utf-8编码且含表头,预处理无结构日志为csv,配置yaml字段名严格匹配,执行parse命令后输出含rawdata和aggregation工作表的excel文件。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要从Linux服务器上一堆分散的日志文件或CSV数据表中,快速提取指定字段(比如时间、状态码、响应时长),合并成一张结构清晰的Excel汇总表,供业务方直接打开查看——Codex图表解析功能正好能自动化完成这个过程。
确认Codex服务已部署并可访问
登录Linux服务器,执行 systemctl status codex-server 查看服务状态。如果显示 active (running),说明服务正常;若为 inactive 或报错,需先运行 sudo systemctl start codex-server 启动服务。
用 curl -s http://localhost:8080/health | jq '.status' 验证API是否就绪,返回 "ok" 才能继续下一步。返回空或报错说明端口被占用或配置未生效。
准备待解析的数据源
把所有要处理的CSV或TSV文件统一放到 /data/input/ 目录下,确保文件编码为UTF-8,且首行为字段名(如 timestamp,status_code,resp_time)。非UTF-8编码会导致中文列名乱码,后续字段匹配失败。
若原始日志是纯文本格式(如Nginx access.log),先用awk或sed预处理成CSV:
awk '{print $1 "," $9 "," $10}' /var/log/nginx/access.log > /data/input/nginx_parsed.csv
这一步不能跳过。Codex不支持直接解析无结构日志,必须提供带明确分隔符和表头的表格文件。
编写Codex解析指令文件
在 /data/config/ 下新建 extract.yaml,内容如下:
input_dir: /data/input<br>output_file: /data/output/summary.xlsx<br>fields:<br> - timestamp<br> - status_code<br> - resp_time<br>aggregations:<br> - group_by: [status_code]<br> metrics: [count, avg(resp_time)]
【fields列表必须与CSV首行完全一致,大小写敏感,多一个空格都会导致字段提取为空】
aggregations部分可选。如果只要原始数据拼接,删掉整个aggregations块即可。
执行解析并生成Excel
第一步:进入Codex安装目录,通常为 /opt/codex;
第二步:运行命令 ./codex parse --config /data/config/extract.yaml;
第三步:等待终端输出 ✅ Exported to /data/output/summary.xlsx。
生成的Excel文件默认包含两个sheet:RawData(原始合并数据)和Aggregation(聚合统计结果)。若配置中未定义aggregations,则只生成RawData一个sheet。
检查 /data/output/ 目录是否存在该文件,用 file /data/output/summary.xlsx 确认确实是Microsoft Excel格式,而非HTML或ZIP伪装文件。











