问题描述
我一直在尝试使用Kinesis Windows Agent通过Kinesis firehose流制表符分隔的日志文件。启动代理时出现以下错误。
LogSource错误无法在C:\ LogSource \ cognosserver3.log,1中获得时间戳:System.Collections.Generic.KeyNotFoundException:字典中不存在给定的密钥。
代理配置文件的格式如下
{
"Sources": [
{
"Id": "LogSource","SourceType": "DirectorySource","Directory": "C:\\LogSource\\","FileNameFilter": "cognosserver3*.log","RecordParser": "Delimited","Delimiter": "\t","Headers": "LoadTimestamp,Level,LoggerName,ThreadName,ThreadKey,ThreadKey2,ThreadKey3,Info,Ipadrress,ProcId,UserInfo,Info2,Path,ServiceName,ProcId2,RequestInfo,Description","TimestampField": "{LoadTimestamp}","Timestampformat": "yyyy-MM-dd'T'HH:mm:ss.fffzzz"
}
],"Sinks": [
{
"Id": "FirehoseLogStream","SinkType": "KinesisFirehose","AccessKey": "????????????","SecretKey": "????????????????????????","StreamName": "Kinesis-firehose-test","Region": "eu-west-1","Format": "json"
}
],"Pipes": [
{
"Id": "LogSourcetoFirehoseLogStream","SourceRef": "LogSource","SinkRef": "FirehoseLogStream"
}
]
}
将定界符更改为“”时,在日志文件中用逗号替换制表符时,数据流将顺利通过。
样本数据
2020-08-31T00:00:13.065 + 0200信息Audit.RTUsage.MS [JobQueueReceiver]不适用com.cognos.monitor.queue.JobQueueReceiver:输入轮询等待 2020-08-31T00:00:13.252 + 0200信息Audit.RTUsage.DLS [SMTPQueueConsumerManager]不适用TransportConnectionPool:getTransport:1:已调用
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)