2015-07-21 summer
一、Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。 继续阅读 »
2015-02-07 veryyoung
Splunk的安装及配置 Splunk 是一个运行于多平台环境下的日志分析软件和系统故障诊断工具。 Splunk 可以支持任何服务器产生的日志,其对日志进行处理的方式是进行高效索引之后让管理员可以对日志中出现的各种情况进行搜索,并且通过非常好的图形化的方式展现出来。 简单介绍下安装及配置流程 1.下载 上splunk官网,选择Free Download,选择对应的操作系统版本,点击开始下载。 其实不能直接下啊,得先注册账户啊,和Jdk下载一样。 老老实实注册吧。注册完毕,登陆,继续Free Download,终于可以了。 发现其实不用注册都行,前提是你知道下载地址。这里给个splunk-6.2.1-245427-Linux- 继续阅读 »
2016-10-26 ALEX LIN
更新日志 Method Swizzle(方法调配、方法混合、方法调和、方法混写) 是 Objective-C 运行时的黑魔法之一。我们可以通过 Swizzle 的手段,在运行时对某些方法的实现进行替换,这是 Objective-C 甚至说 Cocoa 开发中最为华丽,同时也是最为危险的技巧之一。Swizzle 使用了 Objective-C 的动态派发,对于 NSObject 的子类是可以直接使用的。 通过此方案,可以为那些『完全不知道其具体实现的』黑盒方法增加日志记录功能,这非常有助于程序调试。然而,次做法只在调试程序时有用。很少有人在调试程序之外的场合用上述『Method Swillze』来永久改动某个类的功能。不能仅仅因为 继续阅读 »
2015-10-13 Li Shuai
客户端提出搞一个日志上传的接口,方便向服务端提交日志,研究了一下,决定用Nginx嵌入Lua的方式搞。 Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。业余时间使用过,感觉小巧轻快,代码风格和Python一样简洁优雅。在Nginx中内嵌Lua,需要你重新编译安装Nginx,加上ngx_lua模块,同时需要安装LuaJIT,可以看看这篇文章"Nginx与Lua"。 安装好相关的模块后,Nginx配置如下: location ~ /upload { # 调用的路由 # 转到后台处理URL upload_pass /uploadHandle; 继续阅读 »
2017-02-14 blademainer
一 编程规约 (一) 命名规约 (二) 常量定义 (三) 格式规约 (四) OOP规约 (五) 集合处理 (六) 并发处理 (七) 控制语句 (八) 注释规约 (九) 其它 二 异常日志 (一) 异常处理 (二) 日志规约 三 MySQL规约 (一) 建表规约 (二) 索引规约 (三) SQL规约 (四) ORM规约 四 工程规约 (一) 应用分层 (二) 二方库规约 (三) 服务器规约 五 安全规约 * * * more 一 编程规约    (一)命名规约  【强制】 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 继续阅读 »
2014-07-18 刘太华
Golang 看了几天golang, 蛋疼的把以前一个PY的日志处理程序,用golang重写了, 很简单的一个小程序. 用golang重写涉及到, 一些自有特定的string类型的日志, 先是转换成json, 用到simplejson模块, json, err := simplejson.Loads(subStr), 后面发现用map类型实现, 会更优雅一点: byt := []byte(subStr) var dat map[string]interface{} if err:= json.Unmarshal(byt, &dat); err != nil{ panic(err) 继续阅读 »
2018-10-27 Mithrilwoodrat
在存储能力和数据量有限的情况下,我们可以选择 MySQL 来进行简单的数据存储和分析。 Logstash 支持监听文件更新,并可以解析日志后写入 MySQL 数据库。使用 Logstash 可以免去繁琐的开发流程,快速实现旁路日志监控上报功能。 继续阅读 »
2016-08-01 AllanChan
今天想和大家分享的是命令模式。下面还和之前一样,先给出基本的定义。 命令模式(Command) 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或纪录请求日志,以及支持可撤销的操作。 那么让我们简要的说一下命令模式的特点: 1. 它能比较容易地设计一个命令队列; 2. 在需要的情况下,可以较容易地将命令记入日志; 3. 允许接收请求的一方决定是否要否决请求; 4. 可以容易地实现对请求地撤销和重做; 5. 新的命令类不影响其他的类,因此增加新的命令类很容易; 6. 把请求一个操作的对象与知道怎么执行一个操作的对象分隔开; 继续阅读 »
2013-04-07 刘太华
rsyslog的一个高级点的用法, 根据programname做日志文件分离, 使用template功能根据系统时间切割日志文件: *.info;mail.none;authpriv.none;cron.none;!local1;!local3;!local2; /var/log/messages 继续阅读 »
2016-12-16 MoreFreeze
Table of Contents {:toc} 最近被线上任务折磨得不行了,总是隔三差五出各种问题,导致日志丢了或者脚本没跑成功, 出了问题就需要手动去修复,比如手动把少的日志补齐,重跑失败的脚本。有些脚本之间有依赖关系, 手动跑起来就比较复杂,需要隔一会看一眼脚本有没有跑完,再接着跑下一个,严重影响效率。 所以我想如果有个程序能帮我定义好我的任务依赖关系,由它来自动解决运行时的依赖, 如果能有可视化界面看到执行状态,管理任务就更好了。 最近找到一个满足现在这些需求的开源项目—— airflow。 继续阅读 »