Surveiller et dépanner les pipelines
Tous les pipelines créés sont journalisés dans les vues DBMS_CLOUD_PIPELINE.
Voir les informations sur le statut de pipeline
Vérifiez le statut du pipeline et obtenez d'autres informations à l'aide des vues USER_CLOUD_PIPELINES ou DBA_CLOUD_PIPELINES. Par exemple, l'énoncé SELECT suivant avec un prédicat de clause WHERE sur pipeline_name montre que MY_TREE_DATA est un pipeline de chargement et que le pipeline est démarré :
SELECT pipeline_name, pipeline_type, status FROM USER_CLOUD_PIPELINES
WHERE pipeline_name = 'MY_TREE_DATA';
PIPELINE_NAME PIPELINE_TYPE STATUS
------------- ------------- -------
MY_TREE_DATA LOAD STARTED
Pour plus d'informations, voir Vues DBMS_CLOUD_PIPELINE.
Voir les attributs de pipeline
Les attributs de pipeline peuvent être surveillés en interrogeant les vues USER_CLOUD_PIPELINE_ATTRIBUTES ou DBA_CLOUD_PIPELINE_ATTRIBUTES. Interrogez ces vues pour voir les informations sur les attributs de pipeline.
Exemple :
SELECT pipeline_name, attribute_name, attribute_value FROM user_cloud_pipeline_attributes
WHERE pipeline_name = 'MY_TREE_DATA';
PIPELINE_NAME ATTRIBUTE_NAME ATTRIBUTE_VALUE
------------- --------------- ---------------------------------------------------------------------------------
MY_TREE_DATA credential_name DEF_CRED_OBJ_STORE
MY_TREE_DATA format {"type": "csv"}
MY_TREE_DATA interval 20
MY_TREE_DATA location https://objectstorage.us-ashburn-1.oraclecloud.com/n/namespace/b/treetypes/o/
MY_TREE_DATA priority high
MY_TREE_DATA table_name TREES
Pour plus d'informations, voir Vues DBMS_CLOUD_PIPELINE.
Voir l'historique de pipeline
Les vues USER_CLOUD_PIPELINE_HISTORY et DBA_CLOUD_PIPELINE_HISTORY affichent l'état des tâches en cours d'exécution. Utilisez les vues d'historique de pipeline pour surveiller l'état d'un pipeline et détecter les défaillances dans un pipeline en cours d'exécution.
Exemple :
SELECT pipeline_id, pipeline_name, status, error_message FROM user_cloud_pipeline_history
WHERE pipeline_name = 'MY_TREE_DATA';
PIPELINE_ID PIPELINE_NAME STATUS ERROR_MESSAGE
----------- ------------- --------- -------------
7 MY_TREE_DATA SUCCEEDED
Pour plus d'informations, voir Vues DBMS_CLOUD_PIPELINE.
Table de statut de pipeline : Surveillance supplémentaire pour les pipelines de chargement
La table de statut de pipeline affiche chaque nom de fichier et son statut pour un pipeline de chargement. La colonne STATUS_TABLE dans DBA_CLOUD_PIPELINES et USER_CLOUD_PIPELINES affiche le nom de la table de statut.
Par exemple, l'énoncé SELECT suivant avec un prédicat de clause WHERE sur pipeline_name affiche le nom de la table de statut d'un pipeline :
SELECT pipeline_name, status_table FROM user_cloud_pipelines
WHERE pipeline_name = 'MY_TREE_DATA';
PIPELINE_NAME STATUS_TABLE
------------- --------------------
MY_TREE_DATA PIPELINE$9$41_STATUS
Consultez la table de statut pour voir les informations sur le pipeline, notamment :
-
Le numéro d'erreur et le message d'erreur pertinents sont enregistrés dans la table d'état en cas d'échec d'une opération sur un fichier spécifique.
-
Pour les opérations de pipeline terminées, le temps nécessaire pour chaque opération peut être calculé à l'aide des valeurs
START_TIMEetEND_TIMEindiquées.
Par exemple, ce qui suit montre que l'opération de chargement de deux fichiers a échoué et qu'une opération est terminée :
SELECT id, name, status, error_code, error_message, sid FROM PIPELINE$9$41_STATUS;
ID NAME STATUS ERROR_CODE ERROR_MESSAGE SID
-- ---------- --------- ---------- -------------------------------- -----
1 trees1.txt FAILED 30653 ORA-30653: reject limit reached 18070
2 trees2.txt FAILED 30653 ORA-30653: reject limit reached 18070
3 trees3.txt COMPLETED 18070
Pipelines pour le chargement des données, où pipeline_type est 'LOAD', réservez une valeur ID affichée dans USER_LOAD_OPERATIONS et DBA_LOAD_OPERATIONS. La valeur ID dans ces vues est mappée à la valeur OPERATION_ID du pipeline dans USER_CLOUD_PIPELINES et DBA_CLOUD_PIPELINES.
Pour obtenir plus d'informations sur un pipeline de chargement, interrogez la valeur OPERATION_ID du pipeline :
SELECT PIPELINE_NAME, OPERATION_ID FROM USER_CLOUD_PIPELINES
WHERE PIPELINE_NAME = 'MY_TREE_DATA';
PIPELINE_NAME OPERATION_ID
------------- ------------
MY_TREE_DATA 41
Ensuite, interrogez USER_LOAD_OPERATIONS ou DBA_LOAD_OPERATIONS avec un prédicat de clause WHERE sur la colonne ID (à l'aide de la valeur OPERATION_ID).
Exemple :
SELECT ID, TYPE, LOGFILE_TABLE, BADFILE_TABLE, STATUS_TABLE FROM USER_LOAD_OPERATIONS
WHERE ID = 41;
ID TYPE LOGFILE_TABLE BADFILE_TABLE STATUS_TABLE
-- -------- ----------------- ----------------- --------------------
41 PIPELINE PIPELINE$9$41_LOG PIPELINE$9$41_BAD PIPELINE$9$41_STATUS
Cette interrogation affiche ID, TYPE, LOGFILE_TABLE, BADFILE_TABLE s'il existe et STATUS_TABLE. Vous pouvez consulter ces tables pour obtenir des informations supplémentaires sur le chargement du pipeline.
Détails de la table de statuts de pipeline
| Colonne | Type de données | Description |
|---|---|---|
ID |
NUMBER |
Numéro unique affecté au pipeline. |
NAME |
VARCHAR2(4000) |
Nom du pipeline. |
BYTES |
NUMBER |
octets |
CHECKSUM |
VARCHAR2(128) |
Total de contrôle |
LAST_MODIFIED |
TIMESTAMP(6) WITH TIME ZONE |
Heure de la dernière modification pour le pipeline. |
STATUS |
VARCHAR2(30) |
La valeur STATUS est l'une des suivantes :
|
ERROR_CODE |
NUMBER |
Code d'erreur |
ERROR_MESSAGE |
VARCHAR2(4000) |
Message d'erreur |
START_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Heure de début du pipeline. |
END_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Heure de fin du pipeline. |
SID |
NUMBER |
Les sessions |
SERIAL# |
NUMBER |
Les sessions |
ROWS_LOADED |
NUMBER |
Nombre de rangées chargées. |
OPERATION_ID |
NUMBER |
Réservé pour une utilisation future. |
Fichier journal de pipeline et tables de fichiers incorrects
Pour obtenir les noms de fichier journal et de fichier incorrect pour un pipeline de chargement, interrogez la valeur OPERATION_ID du pipeline. Exemple :
SELECT PIPELINE_NAME, OPERATION_ID FROM USER_CLOUD_PIPELINES
WHERE PIPELINE_NAME = 'MY_TREE_DATA';
PIPELINE_NAME OPERATION_ID
------------- ------------
MY_TREE_DATA 41
Ensuite, interrogez USER_LOAD_OPERATIONS ou DBA_LOAD_OPERATIONS avec un prédicat de clause WHERE sur la colonne ID (à l'aide de la valeur OPERATION_ID).
Exemple :
SELECT ID, TYPE, LOGFILE_TABLE, BADFILE_TABLE, STATUS_TABLE FROM USER_LOAD_OPERATIONS
WHERE ID = 41;
ID TYPE LOGFILE_TABLE BADFILE_TABLE STATUS_TABLE
-- -------- ----------------- ----------------- --------------------
41 PIPELINE PIPELINE$9$41_LOG PIPELINE$9$41_BAD PIPELINE$9$41_STATUS
Cette interrogation affiche ID, TYPE, LOGFILE_TABLE, BADFILE_TABLE s'il existe et STATUS_TABLE. Vous pouvez consulter ces tables pour obtenir des informations supplémentaires sur le chargement du pipeline.
Consultez la table du fichier journal du pipeline pour voir un journal complet des opérations de chargement du pipeline.
Exemple :
SELECT * FROM PIPELINE$9$41_LOG;
Consultez la table des fichiers incorrects du pipeline pour voir les détails des enregistrements de format d'entrée comportant des erreurs. La table des fichiers incorrects affiche des informations sur les lignes signalant des erreurs lors du chargement. Selon les erreurs affichées dans la table du fichier journal et les rangées affichées dans la table des fichiers incorrects du pipeline, vous pouvez peut-être corriger les erreurs soit en modifiant les options d'attribut format du pipeline, soit en modifiant les données du fichier que vous chargez.
Exemple :
SELECT * FROM PIPELINE$9$41_BAD;
Pour plus d'informations, voir Surveiller et dépanner les chargements COPY_DATA.