2017-08-17 72 views
-1

以下是我的活動。LogStash Ruby用於分割字段並存儲到新字段

{ 
    "system":{ 
     "cpu":{ 
     "cores":2, 
     "system":{ 
      "pct":1.1988 
     }, 
     "user":{ 
      "pct":0.5487 
     } 
     } 
    }, 
    "type":"metricsets" 
} 

system.cpu.user.pct值應通過system.cpu.cores被劃分和新的值應該存儲在system.cpu.user.pct

我想提到以下,但沒有奏效:

ruby { 
     code => "event.set('system.cpu.user.pct', system.cpu.user.pct/system.cpu.cores)" 
} 

ruby { 
     code => "event['system.cpu.user.pct'] = event['system.cpu.user.pct']/event['system.cpu.cores']" 
} 

ruby { 
     code => "event['[system][cpu][user][pct]'] = event['[system][cpu][user][pct]']/event['[system][cpu][cores]']" 
}; 

回答

0

這工作:

ruby { 
    code => "event.set('[system][cpu][user][pct]', 
    event.get('[system][cpu][user][pct]')/event.get('[system][cpu][cores]'))" 
} 

你可以閱讀更多關於它是如何工作here