REST Resource: projects.locations.investigations

資源:調查

保存 Gemini Cloud Assist 疑難排解調查的內容。

JSON 表示法
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "revision": string,
  "revisionIndex": integer,
  "revisionPredecessor": string,
  "annotations": {
    object (InvestigationAnnotations)
  },
  "executionState": enum (InvestigationExecutionState),
  "error": {
    object (Status)
  },
  "operation": string,
  "title": string,
  "observations": {
    string: {
      object (Observation)
    },
    ...
  },
  "observerStatuses": {
    string: {
      object (ObserverStatus)
    },
    ...
  }
}
欄位
name

string

ID。調查名稱,格式為:projects/{projectNumber}/locations/{locationId}/investigations/{investigationId}

createTime

string (Timestamp format)

僅供輸出。調查的建立時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

僅供輸出。上次更新調查的時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

labels

map (key: string, value: string)

(選用步驟) 調查的使用者定義標籤。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

revision

string

僅供輸出。調查目前修訂版本的資源名稱,格式如下:projects/{projectNumber}/locations/{locationId}/investigations/{investigationId}/revisions/{revision_id}

revisionIndex

integer

僅供輸出。調查目前修訂版本的索引。

revisionPredecessor

string

(選用步驟) 這個修訂版本的前身修訂版本名稱。

annotations

object (InvestigationAnnotations)

(選用步驟) 調查的其他註解。

executionState

enum (InvestigationExecutionState)

僅供輸出。調查的執行狀態。

error

object (Status)

僅供輸出。調查執行失敗時的錯誤。只有在 executionStateINVESTIGATION_EXECUTION_STATE_FAILED 時,才會設定這個欄位。

operation

string

僅供輸出。最近對調查執行的 Run 作業資源名稱,格式為:projects/{projectNumber}/locations/{locationId}/operations/{operation_id}

title

string

(選用步驟) 調查的人類可讀顯示標題。

observations

map (key: string, value: object (Observation))

(選用步驟) 調查內容包含專案狀態的觀察結果。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

observerStatuses

map (key: string, value: object (ObserverStatus))

(選用步驟) 為執行調查而叫用的觀察者狀態。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

InvestigationAnnotations

調查的其他註解。

JSON 表示法
{
  "supportCase": string,
  "revisionLastRunInterval": {
    object (Interval)
  },
  "pagePath": string,
  "extrasMap": {
    string: string,
    ...
  }
}
欄位
supportCase

string

(選用步驟) 與調查相關的支援案件 ID。

revisionLastRunInterval

object (Interval)

僅供輸出。上次執行調查的時間間隔。

pagePath

string

(選用步驟) 建立這項調查的網頁路徑。

extrasMap

map (key: string, value: string)

(選用步驟) 用戶端指定的其他註解。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

時間間隔

代表時間間隔,編碼為 Timestamp 開始時間 (含) 和 Timestamp 結束時間 (不含)。

開始時間必須小於或等於結束時間。如果開始時間與結束時間相同,則間隔為空白 (不符合任何時間)。如果開始和結束時間都未指定,則間隔會符合任何時間。

JSON 表示法
{
  "startTime": string,
  "endTime": string
}
欄位
startTime

string (Timestamp format)

(選用步驟) 間隔的開始時間 (含)。

如果指定了這個值,符合間隔的時間戳記必須等於或晚於開始時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

endTime

string (Timestamp format)

(選用步驟) 限制時段的結束時間 (不包含在內)。

如果指定,符合這個間隔的時間戳記必須早於結束時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

InvestigationExecutionState

調查的執行狀態。

列舉
INVESTIGATION_EXECUTION_STATE_UNSPECIFIED 預設值。這個值不會使用。
INVESTIGATION_EXECUTION_STATE_RUNNING 調查正在進行中。
INVESTIGATION_EXECUTION_STATE_MODIFIED 調查上次更新後尚未執行。
INVESTIGATION_EXECUTION_STATE_FAILED 調查執行完畢,但執行失敗。
INVESTIGATION_EXECUTION_STATE_COMPLETED 所有執行工作都已完成,調查作業暫時停止。

觀察項目

觀察結果代表系統狀態的單一事實,以及相關性的排名。

JSON 表示法
{
  "id": string,
  "timeIntervals": [
    {
      object (Interval)
    }
  ],
  "title": string,
  "observationType": enum (ObservationType),
  "observerType": enum (ObserverType),
  "text": string,
  "data": {
    object
  },
  "dataUrls": {
    string: string,
    ...
  },
  "knowledgeUrls": {
    string: string,
    ...
  },
  "baseObservations": [
    string
  ],
  "relevantResources": [
    string
  ],
  "recommendation": string,
  "systemRelevanceScore": number,
  "relevanceOverride": enum (UserRelevance),
  "observationCompletionState": enum (ObservationCompletionState),
  "observedNormalOperation": boolean
}
欄位
id

string

僅供輸出。可明確識別這項觀察結果。這項值一律等於上層調查中這項觀察結果的地圖鍵。

timeIntervals[]

object (Interval)

(選用步驟) 發生觀察結果的時間。

title

string

(選用步驟) 使用者容易理解的觀察事項顯示標題。

observationType

enum (ObservationType)

這是必要旗標,觀察結果的類型。

observerType

enum (ObserverType)

這是必要旗標,產生這項觀察結果的觀察器類型。

text

string

(選用步驟) 以自然語言或 Markdown 格式說明觀察結果。

data

object (Struct format)

(選用步驟) 觀察結果的結構化表示法。這項功能不一定會符合特定結構定義,也不保證一定會符合。

dataUrls

map (key: string, value: string)

(選用步驟) 指向佐證這項觀察結果的網址。將使用者可理解的說明對應至網址。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

knowledgeUrls

map (key: string, value: string)

(選用步驟) 指向與這項觀察結果相關參考知識的網址。將使用者可理解的說明對應至網址。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

baseObservations[]

string

(選用步驟) 這項觀察結果所依據的其他觀察結果 ID。舉例來說,假設觀察結果會記錄支援該假設的觀察結果。

relevantResources[]

string

(選用步驟) 與觀察結果相關的 Google Cloud 資源。這些應為完整合格的資源 URI,例如:"//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance"

recommendation

string

(選用步驟) 自然語言或 Markdown 文字,說明建議採取的動作,以修正根本原因或進一步調查問題。

systemRelevanceScore

number

(選用步驟) 觀察者認為這項觀察結果的關聯程度。這項資訊可用於在產生假設時,對觀察結果進行排序。系統會輸出 [-1, 1] 範圍內的觀察結果,其中 -1 表示完全不相關、0 表示中立,而 1 表示完全有信心。

relevanceOverride

enum (UserRelevance)

(選用步驟) 使用者對相關性的判斷。

observationCompletionState

enum (ObservationCompletionState)

(選用步驟) 表示觀察結果是否完整,且可用於得出結論。

observedNormalOperation

boolean

(選用步驟) 如果為 false 或未指定,這項觀察結果會提供問題或根本原因的相關資訊。如果為 true,表示系統運作正常。這類負面結果可做為實用的診斷發現,且這個欄位與相關性分數無關。

ObservationType

這代表構成觀察結果的資料類型。這與出處無關:記錄可能是使用者明確提供、透過 AI 擷取,或由 Runbook 發現。

列舉
OBSERVATION_TYPE_UNSPECIFIED 預設值。
OBSERVATION_TYPE_CLOUD_LOG 這項觀察結果的文字是記錄項目。
OBSERVATION_TYPE_CLOUD_METRIC 這項觀察結果的內容是指標或指標群組。
OBSERVATION_TYPE_CAIS_CONFIG 設定
OBSERVATION_TYPE_CAIS_CONFIG_DIFF 設定變更
OBSERVATION_TYPE_CLOUD_ALERT 快訊
OBSERVATION_TYPE_CICD_EVENT 持續整合系統的事件,例如探測器故障。
OBSERVATION_TYPE_TEXT_DESCRIPTION 自由輸入文字,例如初始使用者輸入內容。可以是 Markdown。
OBSERVATION_TYPE_HYPOTHESIS 這是系統得出的 [暫定] 結論。這些內容可做為後續修訂的輸入內容。在這種情況下,系統會使用建議,但不會進行補救。
OBSERVATION_TYPE_STRUCTURED_INPUT 結構化輸入內容,例如輸入表單的 Runbook 參數
OBSERVATION_TYPE_COMPOSITE 用於包含多種證據的觀察結果,例如 Runbook 輸出。
OBSERVATION_TYPE_OTHER 如果沒有其他適用的類型,Runbook 輸出內容可以是「其他」。
OBSERVATION_TYPE_LOG_THEME 記錄中發現的主題。
OBSERVATION_TYPE_CONFIG_ANALYSIS 信號輸出內容,包括 LLM 分析的設定。
OBSERVATION_TYPE_OUTAGE 包含 PSH 停電的訊號輸出。
OBSERVATION_TYPE_KNOWLEDGE 提供特定使用者問題相關知識的文字。例如錯誤目錄說明/外部連結、RAG 等。

ObserverType

這代表資料進入調查的方式。

列舉
OBSERVER_TYPE_UNSPECIFIED 預設值。未使用。
OBSERVER_TYPE_DIAGNOSTICS 診斷程序會明確指出根本原因,例如透過 Runbook。
OBSERVER_TYPE_SIGNALS 信號適用於沒有明確根本原因的處理程序。
OBSERVER_TYPE_DETERMINISTIC_CODE 這適用於僅依賴店內環境的程式碼。特別是錯誤目錄查詢。
OBSERVER_TYPE_AI 這項功能適用於僅根據前提列出的觀察結果進行的 AI 推論。
OBSERVER_TYPE_USER 觀察使用者輸入內容,包括對釐清問題的回覆。所有使用者指定的觀測值都會強制轉換為這個型別。
OBSERVER_TYPE_ALERT 快訊中的觀察結果。

UserRelevance

這代表使用者對觀察結果的相關性判斷。

列舉
USER_RELEVANCE_UNSPECIFIED 使用者尚未將這項觀察結果標示為相關或不相關。
USER_RELEVANCE_PROMOTED 使用者將這項觀察結果標示為相關。
USER_RELEVANCE_REJECTED 使用者將這項觀察結果標示為不相關。

ObservationCompletionState

判斷觀察結果是否完整。

列舉
OBSERVATION_COMPLETION_STATE_UNSPECIFIED 預設值。系統會將其視為「已完成」。
OBSERVATION_COMPLETION_STATE_COMPLETE 這項觀察結果已完整形成。
OBSERVATION_COMPLETION_STATE_INCOMPLETE 這項觀察結果缺少部分資訊,或需要由其他觀察員進一步處理。這類觀察結果可能會在日後的調查執行中遭到捨棄。

ObserverStatus

ObserverStatus 代表調查執行期間,特定時間點的觀察員狀態。

JSON 表示法
{
  "observer": string,
  "observerExecutionState": enum (ObserverExecution),
  "observerDisplayName": string,
  "updateTime": string,
  "startTime": string,
  "updateComment": string,
  "observerErrors": [
    {
      object (Status)
    }
  ]
}
欄位
observer

string

僅供輸出。可明確識別這個觀察者。這項值一律等於上層調查中這個觀察項目的對應鍵。

observerExecutionState

enum (ObserverExecution)

(選用步驟) 觀察器的目前執行狀態。

observerDisplayName

string

這是必要旗標,觀察者的顯示名稱 (使用者可解讀)。

updateTime

string (Timestamp format)

(選用步驟) 觀察員上次更新調查的時間。如果 observerExecutionState 為 COMPLETE 或 FAILED,則這是觀察者完成觀察作業的時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

startTime

string (Timestamp format)

(選用步驟) 觀察者開始觀察的時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數點後位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateComment

string

(選用步驟) 觀察員的狀態更新。

observerErrors[]

object (Status)

(選用步驟) 導致觀察者無法進行特定觀察的錯誤。

ObserverExecution

觀察者的狀態。

列舉
OBSERVER_EXECUTION_UNSPECIFIED 未指定觀察員狀態。
OBSERVER_EXECUTION_NOT_STARTED 調查尚未開始。
OBSERVER_EXECUTION_RUNNING 調查正在進行中,且這個觀察器可執行或正在執行。
OBSERVER_EXECUTION_COMPLETE 觀察員已完成作業,未發生內部錯誤。
OBSERVER_EXECUTION_FAILED 觀察器嘗試執行,但因發生錯誤而失敗。這項資訊是元件專屬資訊,如果顯示觀察結果,可能會以極低的優先順序在 UI 中算繪。
OBSERVER_EXECUTION_BLOCKED 觀察器遭到封鎖,等待輸入。
OBSERVER_EXECUTION_INVESTIGATION_BLOCKED 觀察員回報的錯誤會阻礙或嚴重影響調查,例如 CAIS 或記錄功能已停用。應在使用者介面中醒目顯示。
OBSERVER_EXECUTION_INVESTIGATION_DEGRADED 觀察員回報的錯誤會導致調查品質下降,可能需要使用者在解決原因後,升級或重新執行調查。

方法

create

在指定專案中建立新的調查。

delete

刪除單一調查。

get

取得單一調查的詳細資料。

getIamPolicy

取得資源的存取權控管政策。

list

列出指定專案和位置的調查。

patch

更新單一調查的參數。

setIamPolicy

設定指定資源的存取權控管政策。

testIamPermissions

傳回呼叫者在指定資源上擁有的權限。