[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"consumer-news-detail-888":3,"consumer-news-interaction-888":41,"consumer-news-related-888":44},{"detail":4,"item":36},{"card":5,"schemaVersion":23,"fields":24,"content":30},{"id":6,"kind":7,"targetType":8,"targetId":9,"subtype":7,"typeLabel":10,"title":11,"subtitle":12,"summary":13,"coverUrl":14,"badgeText":15,"href":16,"sourceName":12,"meta":17,"metrics":20,"tags":21,"resolved":22},"NEWS_ARTICLE:888","news","NEWS_ARTICLE",888,"资讯","[开源] LogCrate：免解压、支持筛选和 AI 分析的 PC 端桌面日志工具","博客园","日常排查客户软件运行问题时，经常需要反复下载日志、解压缩，再从一堆文件里慢慢翻找，过程比较麻烦；而且很多日志工具也不支持针对具体字段进行筛选。 对比了一些市面上的日志分析工具后，发现能够同时兼容归档阅读、目录监控、到达通知、结构化筛选和 AI 分析的工具并不多，于是就自己动手做了一款。 PS：自己做","https:\u002F\u002Fiili.io\u002FCy4ztaa.png","","\u002Fnews\u002F888",[18,19],"2026","软件开发",{},[19],true,"consumer-content-detail-v1",{"sourceName":12,"authorName":25,"categoryName":19,"summary":13,"description":13,"publishTime":26,"updateTime":27,"sourceUrl":28,"language":29},"strive-sun","2026-08-31T17:54","2026-09-02T20:37:54","https:\u002F\u002Fwww.cnblogs.com\u002Fstrive-sun\u002Fp\u002F22778852","中文",{"format":31,"policy":32,"normalized":22,"html":33,"text":34,"wordCount":35,"hasBody":22},"HTML","NEWS_CONTENT_V1","\u003Cp>日常排查客户软件运行问题时，经常需要反复下载日志、解压缩，再从一堆文件里慢慢翻找，过程比较麻烦；而且很多日志工具也不支持针对具体字段进行筛选。\u003C\u002Fp>\n\u003Cp>对比了一些市面上的日志分析工具后，发现能够同时兼容归档阅读、目录监控、到达通知、结构化筛选和 AI 分析的工具并不多，于是就自己动手做了一款。\u003C\u002Fp>\n\u003Cblockquote>\n \u003Cp>PS：自己做的软件，想加什么功能就加什么功能 &gt;.&lt;\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Fi1.wp.com\u002Fiili.io\u002FCy4ztaa.png?w=720&amp;quality=65&amp;strip=all\" alt=\"LogCrate 主界面\">\u003C\u002Fp>\n\u003Cp>目前个人使用下来还是比较顺手的。\u003C\u002Fp>\n\u003Ch2>已完成的功能\u003C\u002Fh2>\n\u003Cul>\n \u003Cli>把“下载压缩包 → 手动解压 → 翻找文件 → 打开排查”缩短成更直接的工作流。\u003C\u002Fli>\n \u003Cli>监控目录，新日志到达时自动提醒，并支持目录定位和文件拖入。\u003C\u002Fli>\n \u003Cli>ZIP、7z、RAR、TAR 等归档可以像文件夹一样逐层展开，直接阅读日志。\u003C\u002Fli>\n \u003Cli>支持大文件虚拟滚动、多文件选项卡、编码切换、日志查找和关键词高亮。\u003C\u002Fli>\n \u003Cli>支持按时间、级别、离散值和文本字段组合筛选日志。\u003C\u002Fli>\n \u003Cli>支持本地文件名与路径搜索。\u003C\u002Fli>\n \u003Cli>支持 DOCX 报告的段落、表格和图片预览。\u003C\u002Fli>\n \u003Cli>可选接入 OpenAI 兼容服务，对选中的日志进行 AI 分析，并保存本地加密对话历史。\u003C\u002Fli>\n \u003Cli>监控、索引和搜索均在本机完成，只有用户确认的 AI 内容才会发送给所选供应商。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>正在建设中的功能可以参考项目 README，主要是一些常见日志工具会提供的能力，例如双屏显示等。因为我自己暂时用不到，所以还没有加入。\u003C\u002Fp>\n\u003Cp>项目基于 Tauri 2、React、TypeScript 和 Rust 构建，目前仍在持续完善中。\u003C\u002Fp>\n\u003Cp>欢迎提交 Issue、PR，或者提出各种建议。\u003C\u002Fp>\n\u003Cp>项目地址：\u003Cbr>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FStrive-Sun\u002FLogCrate\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">https:\u002F\u002Fgithub.com\u002FStrive-Sun\u002FLogCrate\u003C\u002Fa>\u003C\u002Fp>","日常排查客户软件运行问题时，经常需要反复下载日志、解压缩，再从一堆文件里慢慢翻找，过程比较麻烦；而且很多日志工具也不支持针对具体字段进行筛选。 对比了一些市面上的日志分析工具后，发现能够同时兼容归档阅读、目录监控、到达通知、结构化筛选和 AI 分析的工具并不多，于是就自己动手做了一款。 PS：自己做的软件，想加什么功能就加什么功能 >.\u003C 目前个人使用下来还是比较顺手的。 已完成的功能 把“下载压缩包 → 手动解压 → 翻找文件 → 打开排查”缩短成更直接的工作流。 监控目录，新日志到达时自动提醒，并支持目录定位和文件拖入。 ZIP、7z、RAR、TAR 等归档可以像文件夹一样逐层展开，直接阅读日志。 支持大文件虚拟滚动、多文件选项卡、编码切换、日志查找和关键词高亮。 支持按时间、级别、离散值和文本字段组合筛选日志。 支持本地文件名与路径搜索。 支持 DOCX 报告的段落、表格和图片预览。 可选接入 OpenAI 兼容服务，对选中的日志进行 AI 分析，并保存本地加密对话历史。 监控、索引和搜索均在本机完成，只有用户确认的 AI 内容才会发送给所选供应商。 正在建设中的功能可以参考项目 README，主要是一些常见日志工具会提供的能力，例如双屏显示等。因为我自己暂时用不到，所以还没有加入。 项目基于 Tauri 2、React、TypeScript 和 Rust 构建，目前仍在持续完善中。 欢迎提交 Issue、PR，或者提出各种建议。 项目地址： https:\u002F\u002Fgithub.com\u002FStrive-Sun\u002FLogCrate",630,{"id":6,"kind":7,"title":11,"summary":13,"image":14,"href":16,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":40},"2026 · 软件开发","#2563eb","16 \u002F 10",[19],{"targetType":8,"targetId":9,"likedByMe":42,"likeCount":43,"commentCount":43,"contentLikeCount":43,"contentCommentCount":43,"sourceLikeCount":43,"sourceCommentCount":43},false,0,[45,51,58,64,70,77,84,90],{"id":46,"kind":7,"title":47,"summary":48,"image":15,"href":49,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":50},"NEWS_ARTICLE:832","用 runtime-async 写一个支持 async\u002Fawait 的轻量脚本引擎","起因：一个好奇 事情的开头很简单。 给 .NET 做过动态脚本的人大概都碰到过同一堵墙：表达式树也好、Reflection.Emit 也好，都很难支持 async\u002Fawait。原因不在语法，而在 await 的实现方式——C# 编译器要为每个 async 方法生成一个状态机结构体，把方法体切成若干片","\u002Fnews\u002F832",[19],{"id":52,"kind":7,"title":53,"summary":54,"image":55,"href":56,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":57},"NEWS_ARTICLE:855","被罚了500后，整个人都变老实了","我们组有个同事，以前是那种闲不住的人。现在也闲不住 只不过是不敢动了。 去年部门空降了一位新总监，阿里P8，第一次全员会PPT上就八个大字：拥抱变化，永不言弃。 新领导上来搞流程改革，每个模块指定Owner，出事追责到人，A级事故罚款500起步，B级300 依次类推，发版上线改配置全走审批。说实话之","https:\u002F\u002Fimg2024.cnblogs.com\u002Fblog\u002F273387\u002F202608\u002F273387-20260818222617092-925481998.png","\u002Fnews\u002F855",[19],{"id":59,"kind":7,"title":60,"summary":61,"image":15,"href":62,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":63},"NEWS_ARTICLE:862","go中make声明切片, 修改切片,append给切片扩容,合并切片,复制切片","make 声明切片 make([]类型, 长度， 容量) kage main import (&quot;fmt&quot;) \u002F\u002F 入口函数 func main() { \u002F\u002F make 声明切片，长度是4， 容量是10 var sliceArr1 = make([]int, 4, 10) fmt.","\u002Fnews\u002F862",[19],{"id":65,"kind":7,"title":66,"summary":67,"image":15,"href":68,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":69},"NEWS_ARTICLE:866","Spring Boot事件监听，这东西到底解决啥问题？","一、先聊个场景，你就明白这玩意儿干啥的了 点过外卖吧？那咱们就用这个场景来说事。 你掏出手机下了单，付了钱。接下来会发生啥？ 厨房那头开始备菜炒菜（这件事耽误不得，客户饿着呢） 手机收到一条短信：&quot;您的订单已收到，预计30分钟送达&quot; 你的会员账户里多了一堆积分 店长那个收银小喇叭","\u002Fnews\u002F866",[19],{"id":71,"kind":7,"title":72,"summary":73,"image":74,"href":75,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":76},"NEWS_ARTICLE:881","RSA 密码传输加密通用接入方案","@目录前言一、介绍二、RSA 在本方案中的角色三、密文协议格式四、密钥生成与 Apollo 配置4.1 编译工具类4.2 执行生成密钥4.3 执行输出示例4.4 Apollo 配置示例五、后端接入方式AOP 注解示例六、后端解密流程七、前端接入方式7.1 获取公钥和 nonce7.2 使用 RSA-","https:\u002F\u002Fimg2024.cnblogs.com\u002Fblog\u002F1867541\u002F202608\u002F1867541-20260831165110853-162420906.png","\u002Fnews\u002F881",[19],{"id":78,"kind":7,"title":79,"summary":80,"image":81,"href":82,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":83},"NEWS_ARTICLE:900","java 多线程开发系列之七：玩转多线程（线程的协作）","线程的协作多种多样，这次主要说说wait和notify两种Object的方法。这也是java早期原生的重要的协作机制之一。先说下这两个英文单词：wait [weɪt] v.等待;等候;(尤指长期地)希望，盼望，期待notify [ˈnəʊtɪfaɪ] vt.通知;(正式)通报;也就是一个等待，一个通","https:\u002F\u002Fimg2024.cnblogs.com\u002Fblog\u002F704073\u002F202608\u002F704073-20260831103138251-1707185366.png","\u002Fnews\u002F900",[19],{"id":85,"kind":7,"title":86,"summary":87,"image":15,"href":88,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":89},"NEWS_ARTICLE:902","DeepSeek Harness 插件","准备环境 dsh 从源码运行，见 dsh 说明。或见之前分享的 DeepSeek Harness 开始。 开发插件 依照 dsh 文档，动手做一遍： 第一个插件: https:\u002F\u002Fdeepseek-harness.github.io\u002Fdeepseek-harness\u002Fdevelop\u002Fbasic\u002F 第","\u002Fnews\u002F902",[19],{"id":91,"kind":7,"title":92,"summary":93,"image":94,"href":95,"meta":37,"badge":10,"author":12,"stats":-1,"accent":38,"coverRatio":39,"tags":96},"NEWS_ARTICLE:917","[python] pywinauto使用指北","当业务系统没有API、命令行接口或可直接集成的数据通道时，桌面自动化往往是打通业务流程的最后一公里。pywinauto库通过Win32 API与Microsoft UI Automation（UIA）访问Windows窗口及控件，使Python脚本能够驱动桌面应用。本文聚焦于pywinauto的基础","https:\u002F\u002Fgitlab.com\u002Fluohenyueji\u002Farticle_picture_warehouse\u002F-\u002Fraw\u002Fmain\u002FCSDN\u002F%5Bpython%5D%20pywinauto%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8C%97\u002Fimgs\u002F1.jpg","\u002Fnews\u002F917",[19]]