Kusto 摄取错误 "BadRequest_EmptyArchive: Empty zip archive"

Kusto ingestion error "BadRequest_EmptyArchive: Empty zip archive"

我在 Azure blob 存储中有一堆 .csv 文件,还有一个将它们拉入 Kusto (Azure Data Explorer) 的摄取规则。这曾经有效,但最近我遇到了很多摄取失败的情况。 “.show 摄取失败”给我:

Details FailureKind OperationKind   ErrorCode   ShouldRetry IngestionProperties IngestionSourcePath
BadRequest_EmptyArchive: Empty zip archive  Permanent   DataIngestPull  BadRequest_EmptyArchive 0   "[Format=Csv/mandatory, IngestionMapping=[{""column"":""CrashSource"",""datatype"":""string"",""Ordinal"":""0""},{""column"":""CrashType"",""datatype"":""string"",""Ordinal"":""1""},{""column"":""ReportId"",""datatype"":""string"",""Ordinal"":""2""},{""column"":""DeviceId"",""datatype"":""string"",""Ordinal"":""3""},{""column"":""DeviceSerialNumber"",""datatype"":""string"",""Ordinal"":""4""},{""column"":""DumpFilePath"",""datatype"":""string"",""Ordinal"":""5""},{""column"":""FailureXmlPath"",""datatype"":""string"",""Ordinal"":""6""},{""column"":""PROCESS_NAME"",""datatype"":""string"",""Ordinal"":""7""},{""column"":""BUILD_VERSION_STRING"",""datatype"":""string"",""Ordinal"":""8""},{""column"":""DUMP_TYPE"",""datatype"":""string"",""Ordinal"":""9""},{""column"":""PRIMARY_PROBLEM_CLASS"",""datatype"":""string"",""Ordinal"":""10""},{""column"":""IMAGE_NAME"",""datatype"":""string"",""Ordinal"":""11""},{""column"":""FAILURE_BUCKET_ID"",""datatype"":""string"",""Ordinal"":""12""},{""column"":""OS_VERSION"",""datatype"":""string"",""Ordinal"":""13""},{""column"":""TARGET_TIME"",""datatype"":""string"",""Ordinal"":""14""},{""column"":""FAILURE_ID_HASH_STRING"",""datatype"":""string"",""Ordinal"":""15""},{""column"":""FAILURE_ID_HASH"",""datatype"":""string"",""Ordinal"":""16""},{""column"":""FAILURE_ID_REPORT_LINK"",""datatype"":""string"",""Ordinal"":""17""}], ValidationPolicy=[Options=ValidateCsvInputConstantColumns, Implications=BestEffort], Tags=[ToStringEmpty], IngestIfNotExists=[ToStringEmpty], ZipPattern=[null]]"  https://crashanalysisresults.blob.core.usgovcloudapi.net/datacontainer/Telemetry.37c92f1a-a951-4047-b839-e685bd11758f.zip.crashanalysis.csv

我的 CSV 文件压缩在 blob 存储中。我需要用 ZipPattern 做些什么才能这么说吗? 这是此 CSV 包含的内容(许多字符串已简化):

CrashSource,CrashType,ReportId,DeviceId,DeviceSerialNumber,DumpFilePath,FailureXmlPath,PROCESS_NAME,BUILD_VERSION_STRING,DUMP_TYPE,PRIMARY_PROBLEM_CLASS,IMAGE_NAME,FAILURE_BUCKET_ID,OS_VERSION,TARGET_TIME,FAILURE_ID_HASH_STRING,FAILURE_ID_HASH,FAILURE_ID_REPORT_LINK
"source","type","reportid","deviceid","","dumpfilepath","failurexmlpath","process","version","1","problem class","image","bucket","version","2020-07-27T22:36:44.000Z","hash string","{b27ad816-2cb5-c004-d164-516c7a32dcef}","link"

经常发生。我似乎只是通过询问找到了自己的答案。在查看我的问题时,我意识到字符串“.zip”位于我的 CSV 文件名的中间。 (Telemetry.37c92f1a-a951-4047-b839-e685bd11758f.zip.crashanalysis.csv) 这让我想知道 Kusto 是否基于此区别对待它。我通过使用完全相同的文件进行测试,将其重命名为“Telemetry.37c92f1a-a951-4047-b839-e685bd11758f.crashanalysis.csv”,然后上传。已成功摄取。

我想我会重命名我的文件以解决这个问题,但这对我来说听起来像是 Kusto 摄取错误。

苏,感谢您报告此事。

是的,Kusto 会自动尝试检查其中包含“.zip”的文件。如果字符串位于文件名的中间而不是末尾,我们将检查为什么这是“绊倒”。