使用GCP的Java SDK,我想只读取未配置为导出到任何接收器的日志。
当我致电com.google.cloud.logging.Logging.listLogEntries()
时,我得到了所有日志,包括日志已导出到我已配置的接收器。
是否可以仅收集未配置为导出到任何接收器的日志条目?
答案 0 :(得分:1)
您需要使用EntryListOption
来获取过滤后的日志条目,如this page所述。
Page<LogEntry> entries = logging.listLogEntries(
EntryListOption.filter("logName=projects/" + options.getProjectId() + "/logs/test-log"));
Iterator<LogEntry> entryIterator = entries.iterateAll().iterator();
while (entryIterator.hasNext()) {
System.out.println(entryIterator.next());
}
是否可以仅收集未配置为导出到任何接收器的日志条目?
为此,
您需要使用REST api或等效的java client
迭代接收器以获取每个过滤器查询
构建动态过滤器以与上述EntryListOption