匯出稽核資料
ExportAuditData 服務用來從離線 (封存) 資料或線上資料匯出稽核訊息的本地化版本。此服務會從封存與線上資料建構本地化稽核訊息。此服務會取用存放庫名稱、目標路徑、目標檔案名稱、開始日期及結束日期,並會將所有項目以指定目標檔案名稱從線上或離線儲存區匯出至位於指定目標路徑的 zip 檔案。匯出內容會依稽核日期排序。服務及其輸入如下:

ExportAuditData(locale[String], targetRepositoryName[THINGNAME],
targetPath[STRING],
targetFileName[STRING],
startDate(dateTime),
endDate(dateTime))
下表列出並簡要說明輸入參數,並顯示其 ThingWorx 基礎類型:
參數
描述
基礎類型
locale
匯出資料時所使用語言的兩個字母的縮寫。例如,"en" 代表英文,"fr" 代表法文。
STRING
targetRepositoryName
檔案存放庫物件的名稱,包含本地化稽核項目的輸出檔案應儲存在此。
THINGNAME
targetPath
應將輸出檔案寫入至的目標位置。
STRING
targetFileName
應儲存本地化稽核資料之輸出檔案的名稱。
STRING
startDate
您要匯出之第一個稽核項目的日期與時間。時間戳記在此稽核項目之後並在 endDate 之前的所有稽核項目都會匯出。
DATETIME
endDate
您要匯出之最後一個稽核項目的日期與時間。時間戳記在此稽核項目之前並在 startDate 之後的所有稽核項目都會匯出。
DATETIME
以下是呼叫此服務的範例:

AuditSubsystem.ExportAuditData("en", myExportRepository, "/auditExport/",
"export_11-03_one_hour", 2017-11-03 18:50:03.000, 2017-11-03 19:50:03.000)
此範例會在 /auditExport/export_11-03_one_hour.zipmyExportRepository 中建立英文匯出。內容將會是所有線上稽核訊息以及所有離線稽核訊息,以指定的開始日期與結束日期為基礎。所匯出 zip 檔案的大小取決於在開始日期與結束日期之間收集到的資料量。下表顯示以開始日期與結束日期為基礎的匯出內容:
開始日期
結束日期
匯出的內容
2017-11-03 18:50:03.000 (特定日期與時間)
2017-11-03 19:50:03.000 (特定日期與時間)
從開始日期到結束日期為止的所有線上與離線資料,以此範例為例,就是同一日期 (2017–11–03) 一小時 (從 18:50:03.00019:50:03.000) 的資料。
null
2017-11-03 19:50:03.000 (特定日期與時間)
早於結束日期與時間 (2017-11-03 19:50:03.000) 的所有線上資料及任何離線資料。若將開始日期設定為 null,匯出可能會包含大量稽核資料,具體要視開始保留離線資料的實際日期而定。
2017-11-03 18:50:03.000 (特定日期與時間)
null
介於開始日期與時間和目前日期與時間之間的所有線上資料及任何離線資料,可透過將結束日期設定為 null 來指定。
null
null
「所有」線上及離線稽核資料。不建議使用此方式,因為這可能會耗費很長的時間。
依然以此範例為例,export_11-03_one_hour.zip 檔案將包含 AuditArchives/export/export_11-03_one_hour.json 檔案。以下是匯出中 JSON 的範例:

{
"rows": [
{
"auditCategory": "Modeling",
"sourceType": "ModelTagVocabulary",
"source": "IntegrationTesting",
"id": "12345678-0123-4567-8901-123457890123",
"message": "Created ModelTagVocabulary \"IntegrationTesting\"",
"user": "Administrator",
"timestamp": 1490029001679
},
...
...
]
}
針對此範例傳回的資訊包括下列詳細資訊:
auditCategory - 稽核訊息類別的名稱。在上述範例中,即為 Modeling 類別。如需有關稽核類別的資訊,請參閱 稽核類別
sourceType - 與產生此稽核訊息之應用程式相關聯的類型 (source)。
source - 產生此稽核訊息的 ThingWorx 應用程式或可執行檔。在此範例中,來源是 IntegrationTesting
id - 產生稽核訊息之應用程式的 GUID。GUID 實際上是 ThingWorx 針對應用程式產生的應用程式金鑰。
message - 稽核訊息的文字。
user - 產生稽核訊息時執行應用程式之使用者的登入名稱。
timestamp - 在 epoch 時間,產生稽核訊息的日期與時間。
匯出後線上資料會發生什麼情況?
匯出之後,只要符合下列條件,線上資料即會保留在線上儲存區中:
線上資料的存留期比稽核子系統 DaysOnline 參數的指定天數短。依預設,此設定為 60 天。
線上稽核資料表的列數少於為其指定的列數上限 「稽核子系統的 maxEntriesOnlineAuditData 參數)。預設值為 500000 列。
匯出操作會呼叫 ArchiveAuditHistory 服務,其會將稽核資料從線上儲存區複製到 AuditArchiveFileRepository,以進行排程的匯出,如果這兩個條件都符合,則會將其保留在線上。如果其中一個條件不符合 (資料存留期超過天數或表格的列數超出列數上限),則在匯出期間將線上資料封存至離線儲存區之後,會將線上資料從線上儲存區移除。