我想做的是以某种方式将我的grok字段传递给外部ruby过滤器脚本,并根据这些字段的特定标记进行设置。问题是我只能使用事件API获取整个日志消息。
我的问题是:是否可以从ruby过滤器中已处理的日志消息中访问字段,还是我必须自己解析整个消息,这不是最佳选择,因为每个日志消息都要处理两次?或者,我可以完全转储grok过滤器,然后自己执行脚本中的所有操作。
答案 0 :(得分:0)
是的,有可能。 您可以使用Event API
获得对任何字段的只读访问权限static setWallpaper(int wallpaperID) async {
///Prepare variables for setting wallpaper and download the wallpaper as well (if needed)
String url = getWallpaperURL(WallpaperSize.fullWallpaper, wallpaperID);
String path = await getPathForWallpaperFile(url);
bool fileExists = checkIfFileExists(path);
///If wallpaper file does not exist then download it
if (fileExists == false) {
///Download wallpaper then change wallpaper
await downloadWallpaperFile(wallpaperID, path: path).then((result) {
///Check if download was successful
if (result == 0) {
///Change wallpaper
AndroidInterface.setWallpaper(path);
}
});
} else {
///Wallpaper already downloaded
///Change wallpaper
AndroidInterface.setWallpaper(path);
}
}
field也可以是嵌套的字段引用,例如filter {
ruby {
code => 'event.get("foo" )'
}
}
。
[field][bar]