Kategorien:

Information Schema, Tabellenfunktionen

DCM_DEPLOYMENT_HISTORY

Diese Tabellenfunktion gibt den Bereitstellungsverlauf für DCM project-Objekte zurück. Sie können damit erfolgreiche und fehlgeschlagene Bereitstellungen abfragen, einschließlich Zeitstempel, Status, Fehlerdetails und zusammenfassende Statistiken. Die Funktion bietet rollenbasierten Zugriff und Ergebnisse mit niedriger Latenz.

Syntax

DCM_DEPLOYMENT_HISTORY(
      [ PROJECT_NAME => '<string>' ]
      [, START_TIME_RANGE_START => <constant_expr> ]
      [, START_TIME_RANGE_END => <constant_expr> ]
      [, RESULT_LIMIT => <integer> ] )

Argumente

Alle Argumente sind optional.

PROJECT_NAME => 'string'

Vollqualifizierter Name vom DCM project. Falls nicht angegeben, gibt die Funktion den Verlauf aller Projekte zurück, auf die die aktuelle Rolle Zugriff hat.

START_TIME_RANGE_START => constant_expr

Zeitstempel (im Format TIMESTAMP_LTZ), der den Beginn des Zeitbereichs zum Abrufen von Bereitstellungsereignissen markiert.

Standard: Vor 7 Tagen.

START_TIME_RANGE_END => constant_expr

Zeitstempel (im Format TIMESTAMP_LTZ), der das Ende des Zeitbereichs zum Abrufen von Bereitstellungsereignissen markiert.

Standardwert: aktueller Zeitstempel.

RESULT_LIMIT => integer

Maximale Anzahl der zurückzugebenden Zeilen.

Standard: 10000.

Ausgabe

Die Funktion gibt die folgenden Spalten zurück:

Spaltenname

Datentyp

Beschreibung

QUERY_UUID

VARCHAR

Eindeutiger Bezeichner der Abfrage, die die Bereitstellung ausgeführt hat.

PROJECT_NAME

VARCHAR

Name vom DCM project, das bereitgestellt wurde.

START_TIMESTAMP

TIMESTAMP_LTZ

Zeitstempel, wann die Ausführung der Bereitstellung begonnen hat.

END_TIMESTAMP

TIMESTAMP_LTZ

Zeitstempel, wann die Ausführung der Bereitstellung abgeschlossen wurde oder fehlgeschlagen ist.

DEPLOYMENT_NAME

VARCHAR

Interner Bereitstellungsbezeichner (z. B. DEPLOYMENT$1, DEPLOYMENT$2).

DEPLOYMENT_ALIAS

VARCHAR

Vom Benutzenden festgelegter Alias für die Bereitstellung. Leer, wenn kein Alias angegeben wurde.

STATUS

VARCHAR

Ergebnis der Bereitstellung. Mögliche Werte: SUCCESSFUL, FAILED, CANCELED.

PHASE

VARCHAR

Die Phase der Ausführung. Mögliche Werte: PLAN, DEPLOY, INIT.

CONFIGURATION_PROFILE

VARCHAR

Name des für die Bereitstellung verwendeten Konfigurationsprofils. Leer, wenn keine Konfiguration angegeben wurde.

ERROR_MESSAGE

VARCHAR

Fehlermeldung, wenn die Bereitstellung fehlgeschlagen ist. Leer für erfolgreiche Bereitstellungen.

ERROR_CODE

VARCHAR

Fehlercode, wenn die Bereitstellung fehlgeschlagen ist. Leer für erfolgreiche Bereitstellungen.

DATABASE_NAME

VARCHAR

Datenbank, die das DCM project enthält.

SCHEMA_NAME

VARCHAR

Schema, das das DCM project enthält.

EXECUTOR_ROLE

VARCHAR

Rolle, die den Bereitstellungsbefehl ausgeführt hat.

STATS

VARIANT

JSON-Objekt, das zusammenfassende Statistiken der Bereitstellung enthält, aufgeschlüsselt nach Kategorien. Jede Kategorie enthält Zählungen von created-, altered- und dropped-Elementen. Die Kategorien sind entities (verwaltete Objekte), columns, grants und dmfAttachments (Erwartungen der Datenmetrikfunktionen).

Nutzungshinweise

  • Beim Aufrufen einer Information Schema-Tabellenfunktion muss die Sitzung über ein aktives INFORMATION_SCHEMA-Schema verfügen oder der Funktionsname muss vollqualifiziert sein. Weitere Details dazu finden Sie unter Snowflake Information Schema.

Beispiele

Abrufen des Bereitstellungsverlaufs für ein bestimmtes Projekt, begrenzt auf drei Ergebnisse:

SELECT
  PROJECT_NAME,
  START_TIMESTAMP,
  DEPLOYMENT_NAME,
  DEPLOYMENT_ALIAS,
  STATUS,
  CONFIGURATION_PROFILE,
  EXECUTOR_ROLE
FROM
  TABLE (MY_DB.INFORMATION_SCHEMA.DCM_DEPLOYMENT_HISTORY(
    project_name => 'MY_DB.PROJECTS.MY_PROJECT',
    result_limit => 3
  ));
+----------------+-----------------------------+--------------+------------------+------------+-----------------------+------------------+
| PROJECT_NAME   | START_TIMESTAMP             | DEPLOYMENT   | DEPLOYMENT       | STATUS     | CONFIGURATION_PROFILE | EXECUTOR_ROLE    |
|                |                             | _NAME        | _ALIAS           |            |                       |                  |
+----------------+-----------------------------+--------------+------------------+------------+-----------------------+------------------+
| MY_PROJECT     | 2026-03-20 09:15:22.254     | DEPLOYMENT$3 | staging update   | SUCCESSFUL | STAGE                 | PROJECT_DEPLOYER |
| MY_PROJECT     | 2026-03-19 14:30:10.927     | DEPLOYMENT$2 |                  | FAILED     | DEV                   | PROJECT_DEPLOYER |
| MY_PROJECT     | 2026-03-18 11:00:05.339     | DEPLOYMENT$1 | initial deploy   | SUCCESSFUL | DEV                   | PROJECT_DEPLOYER |
+----------------+-----------------------------+--------------+------------------+------------+-----------------------+------------------+

Die STATS-Spalte enthält einJSON-Objekt mit der folgenden Struktur:

{
  "columns": {
    "altered": 0,
    "created": 12,
    "dropped": 0
  },
  "dmfAttachments": {
    "altered": 0,
    "created": 2,
    "dropped": 0
  },
  "entities": {
    "altered": 1,
    "created": 5,
    "dropped": 0
  },
  "grants": {
    "altered": 0,
    "created": 4,
    "dropped": 0
  }
}

Abrufen aller Spalten für alle Projekte, auf die die aktuelle Rolle innerhalb der letzten 24 Stunden zugreifen konnte:

SELECT *
FROM TABLE (INFORMATION_SCHEMA.DCM_DEPLOYMENT_HISTORY(
  start_time_range_start => DATEADD(hours, -24, CURRENT_TIMESTAMP())
));