首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Apache::Log::Parser中使用Time::Parser

在Apache::Log::Parser中使用Time::Parser
EN

Stack Overflow用户
提问于 2017-02-18 19:24:44
回答 1查看 74关注 0票数 0

我正在使用Apache::Log::Parser来解析Apache日志文件。

我使用以下代码从日志文件中提取日期。

代码语言:javascript
复制
my $parser = Apache::Log::Parser->new(fast=>1);
my $log = $parser->parse($data);
$t = $log->{date};

现在,我尝试使用Time::Piece来解析日期,但是我做不到。

代码语言:javascript
复制
print "$t->day_of_month";

但是,它不起作用。如何使用Time::Piece来解析日期?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-18 19:46:17

不能在字符串插值内调用对象上的方法。它可能会输出如下内容:

代码语言:javascript
复制
Sat Feb 18 12:44:47 2017->day_of_month

删除双引号""以调用该方法。

代码语言:javascript
复制
print $t->day_of_month;

现在的输出是:

代码语言:javascript
复制
18

请注意,如果日志中有纪元值,则需要使用localtimegmtime创建Time::Piece对象;如果日期是某种时间戳,则需要使用strptime

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42314499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档