【发布时间】:2017-11-08 15:56:47
【问题描述】:
我有日志数据,我想将每个信息提取到一个变量中
以下是示例一行日志。 {:id=>306, :name=>"bblite", :cpu=>{:quota=>4, :allocated=>4, :actual=>0}, :memory=>{:quota=>8192, :allocated=>8192, :actual=>8578}, :cluster_stats=>{"wc1104"=>{:cpu=>0, :mem=>8578}}}
我需要一个具有所有 id 的变量、一个具有所有名称的变量、一个具有 CPU 的变量和一个具有所有集群统计信息的变量
以下是我的猪脚本的一部分。我可以存储 ID,但我不知道如何使用正则表达式提取其余 ID。
。 . .
matching_messages = FILTER raw_lines BY (LOWER(message) MATCHES '.*cc_altus-plaform.*');
ids = FOREACH matching_messages GENERATE REGEX_EXTRACT(message,'id=>\\d*',0);
names = FOREACH matching_messages GENERATE REGEX_EXTRACT(message,'name=>\\"\\",',0);
line_with_date = FOREACH matching_messages GENERATE
DateFormatter(timestamp) AS formatted_time: chararray, message;
DUMP names;
【问题讨论】:
标签: regex hadoop apache-pig