- 浏览: 38907 次
- 来自: 深圳
文章分类
最新评论
-
ZacMa:
哈哈,突然感觉里面没怎么介绍,全是贴代码了
<8>redis及erl-redis阅读 -
惊涛翻案:
马博士,给我开课吧
<8>redis及erl-redis阅读
执行下面的代码
test:start().
test.erl
-module(test).
-compile(export_all).
start() ->
Fun = loop,
spawn(?MODULE, Fun, []).
loop() ->
receive
after 5000 ->
error_logger:delete_report_handler(error_logger_file_h), PDir = "/home/mzh/pratise",
{H, M, S} = time(),
SDir = lists:flatten(io_lib:format('~2..0b~2..0b~2..0b', [H, M, S])),
FileName = "log",
Path = PDir ++ "/" ++ SDir,
File = PDir ++ "/" ++ SDir ++ "/" ++ FileName,
file:make_dir(Path),
io:format("~n~p~n", [File]),
error_logger:swap_handler({logfile, File}),
error_logger:error_msg(File)
end,
loop().
每隔5秒钟把日志记录到以时间命名的目录中去,
-bash-3.2$ pwd
/home/mzh/pratise
-bash-3.2$ ls
154806 154816 154826 154836 154846 154856 154906 154916 154926 154936 154946 154956 155006 ...
每个文件夹中都是一个log文件,
log里面的内容都相同,是error_logger:error_msg(File)打印的内容,
例如其中一个log的内容
-bash-3.2$ cat 155011/log
=ERROR REPORT==== 22-Oct-2013::15:50:11 ===
/home/mzh/pratise/155011/log,
当然日志记录用rb也非常方便,会自动分类,rb使用方法
http://zacma.iteye.com/blog/1704685
test:start().
test.erl
-module(test).
-compile(export_all).
start() ->
Fun = loop,
spawn(?MODULE, Fun, []).
loop() ->
receive
after 5000 ->
error_logger:delete_report_handler(error_logger_file_h), PDir = "/home/mzh/pratise",
{H, M, S} = time(),
SDir = lists:flatten(io_lib:format('~2..0b~2..0b~2..0b', [H, M, S])),
FileName = "log",
Path = PDir ++ "/" ++ SDir,
File = PDir ++ "/" ++ SDir ++ "/" ++ FileName,
file:make_dir(Path),
io:format("~n~p~n", [File]),
error_logger:swap_handler({logfile, File}),
error_logger:error_msg(File)
end,
loop().
每隔5秒钟把日志记录到以时间命名的目录中去,
-bash-3.2$ pwd
/home/mzh/pratise
-bash-3.2$ ls
154806 154816 154826 154836 154846 154856 154906 154916 154926 154936 154946 154956 155006 ...
每个文件夹中都是一个log文件,
log里面的内容都相同,是error_logger:error_msg(File)打印的内容,
例如其中一个log的内容
-bash-3.2$ cat 155011/log
=ERROR REPORT==== 22-Oct-2013::15:50:11 ===
/home/mzh/pratise/155011/log,
当然日志记录用rb也非常方便,会自动分类,rb使用方法
http://zacma.iteye.com/blog/1704685
发表评论
-
erlang版本安装相关问题 <32>
2014-05-10 15:54 623<1> erlang R1603安装后,crytp ... -
关于iolist<30>
2014-01-15 10:42 624iolist是比较常用的数据结构. iolist的 ... -
erlang 字符编码 <29>
2014-01-14 16:31 1260用mochiweb通过网页发送中文到服务器,结果服务器显示乱码 ... -
<27>erlang record
2013-11-19 11:19 774平时总是忘记record的某些使用方法,每次使用都要翻文档, ... -
<26>io:format io_lib:format
2013-11-14 11:07 1313使用io_lib时候要注意参数,尤其是封装json串的时候,否 ... -
<23>erlang 数据存储
2013-10-15 22:15 1660做为后端开发者,经常 ... -
<22> erlang中的数学计算函数相关
2013-10-10 10:34 16331. 幂函数 match:pow(m,n) 表示m的n次幂 ... -
<20>erlang中的类型和函数说明
2013-09-15 11:25 977erlang是一种动态类型的语言(运行时才决定数据类型),可以 ... -
<19>erlang中的时间,日期
2013-09-06 11:21 1194时间函数涉及的数据类型: DATA TYPES datetim ... -
<18>Efficient guide 之List handling
2013-08-31 18:45 6771 Deep and flat lists lists:fl ... -
<17>Efficiency Guide之Function
2013-08-27 22:30 5801. 函数模式匹配 模式匹配,在函数头,case和receiv ... -
<16>Efficiency Guide之Common Caveats
2013-08-11 11:07 809(1) ++ 如果做一个list的反转,不要这样, naiv ... -
<15> lists模块补充
2013-08-05 20:12 828%% 对list模块经常用到的进行补充 %% 1 对所有元素进 ... -
<15> lists模块解析和补充
2013-07-24 17:57 12%% 对list模块经常用到的进行补充 %% 1 对所有元素 ... -
<12>简述erlang的几种错误
2013-04-14 23:31 11821) badarg Bad argument. The ar ... -
<11>erlang中方便使用的模块和命令(2)
2013-04-06 22:33 797(1) 进程字典到底用不用,很多人推荐使用 http:// ... -
<9>rabbitmq网络层
2013-01-31 00:20 792抽离出了网络层, 逻辑层待以后研究 https://gith ... -
<8>redis及erl-redis阅读
2013-01-16 10:14 8491 redis的功能相当的强大,里面的发布订阅pub/su ... -
<7>pg2 分析
2012-12-08 13:42 1258网上看到erlang的pg2模块似乎没人推荐使用,但是还是有不 ... -
<6>error_logger 使用
2012-12-02 16:24 1451erlang中日志管理主要有error_loggger 模块, ...
相关推荐
`<logger>` 和 `<root>` 都可以包含 `<appender-ref>`,定义将使用哪些日志处理器(appender)。 例如,要为名为 `com.example.myApp` 的包设置日志级别并指派一个 appender,你可以这样配置: ```xml ...
JSLogger通过简单的API接口,使开发者能够方便地在浏览器环境中记录不同级别的日志信息,如信息(info)、警告(warn)、错误(error)等。 **主要功能** 1. **多级别日志记录**:JSLogger支持多种日志级别,包括...
3. **使用Slf4j API**: 在Java代码中,通过import slf4j的LoggerFactory来获取Logger实例,然后调用其各种方法记录日志。例如: ```java import org.slf4j.Logger; import org.slf4j.LoggerFactory; public ...
`Log4j2`和`SLF4J`是两个广泛使用的Java日志框架,它们各有特点,并且可以协同工作,提供强大的日志记录功能。本文将详细介绍如何利用`Log4j2`和`SLF4J`来配置一个测试类,使其日志按照日期生成,以便于管理和分析。...
在这个场景中,我们将深入探讨如何使用C3P0连接池来与MySQL数据库进行交互,并结合log4j进行日志记录。 首先,要使用C3P0,你需要在项目中引入相应的依赖。在Maven项目中,可以在pom.xml文件中添加以下依赖: ```...
- 例如,可以在生产环境中将所有logger级别设置为WARN或ERROR,只记录重要的异常信息,以减少日志文件大小。 6. **过滤和定制**: - 可以使用过滤器(Filter)进一步控制哪些日志信息会被输出。 - 自定义...
在C++代码中,首先需要初始化log4cxx,然后通过`LoggerPtr`获取Logger实例,最后使用`debug`, `info`, `warn`, `error`等方法记录日志。 ```cpp #include "log4cxx/logger.h" #include "log4cxx/...
在IT行业中,日志记录是系统开发不可或缺的一部分。它提供了对程序运行状态的跟踪和调试信息,对于问题排查、性能优化以及系统监控至关重要。在SpringMVC项目中,"统一格式的日志写入"通常指的是通过配置日志框架,...
-- 日志级别:OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL --> <!-- configuration.status:设置log4j2自身的内部信息输出级别 --> <!-- monitorInterval:设置配置文件更新检查的间隔秒数 --> ...
在上面的代码中,我们使用 ErrorLog 记录了一个错误日志,然后使用 InfoLog 记录了一个信息日志。 四、日志级别 Serilog 提供了多种日志级别,包括 Verbose、Debug、Information、Warning、Error 和 Fatal。每种...
8. **日志轮换**:为了防止单个日志文件过大,可以实现日志轮换,即当文件达到一定大小或时间间隔后,创建新的日志文件。这可以通过在日志框架中设置规则来实现。 9. **性能优化**:虽然日志有助于调试,但过多的...
这些级别的优先级顺序为:DEBUG < INFO < WARN < ERROR < FATAL。如果某Logger组件的级别设置为P,则所有级别低于P的日志信息将被忽略。 ##### 1.2 Logger Logger组件负责记录日志信息,并可以通过配置决定哪些...
下面将详细介绍如何使用log4j进行日志记录。 #### 三、引入必要的jar包 为了使log4j能够在项目中正常运行,需要在项目的lib目录中添加以下jar包: - `log4j-1.2.16.jar`:这是日志功能的核心包。 - `spring.jar`或`...
例如,如果设置了过高的日志级别(如ERROR),那么一些有用的DEBUG或INFO级别的日志信息将不会被记录下来。相反,如果设置了过低的日志级别(如DEBUG),可能会导致日志文件过大,从而影响性能。 2. **日志输出格式...
在这个例子中,我们首先获取一个名为"my_logger"的logger实例,然后使用宏`LOG4CPLUS_DEBUG`和`LOG4CPLUS_INFO`分别记录调试和信息级别的日志。 总结来说,log4cplus-1.2.1作为一个轻量级的日志库,不仅在功能上...
例如,`<iostream>`可以用于在所有支持C++的平台上进行基本的输入输出,但更高级的日志功能(如文件操作或网络传输)可能需要针对不同平台进行调整。例如,Linux系统中可以使用`syslog`接口,而在Windows上可能需要...
- **日志的过滤与格式化**:进一步定制日志输出格式,例如加入额外的信息如线程ID、进程ID等,或者使用过滤器只记录特定的日志条目。 通过以上详细的介绍和实现过程,我们可以看出Python中的`logging`模块不仅功能...
这个模块提供了一套完整的日志记录系统,包括定义日志级别(如DEBUG、INFO、WARNING、ERROR、CRITICAL),设置日志处理器(如控制台输出、文件写入、网络发送等),以及自定义日志格式等功能。通过`logging....
- **配置根logger或<root>元素**:用于指定默认的日志配置。 - **配置Appender**:指定日志信息输出的方式。 ##### 3.3 Appender累积 可以通过配置多个Appender来累积日志输出。 #### 四、Appender详解 Appender...