Nous avons un système pour suivre toutes les requêtes exécutées sur Google BigQuery. Nous utilisons essentiellement des API Google Cloud via GCloud Utility, pour suivre la requête DDL / DML, nous stockons la durée de l'exécution du nom d'utilisateur et de la requête et l'horodatage sur DB. P>
Cependant, dans ces API, je ne suis pas en mesure de suivre la requête DDL où la table créée ou supprimée directement de BigQuery UI. Y a-t-il un moyen de suivre qui et lorsqu'il est tiré ces questions p>
3 Réponses :
Et si nous créons une table à l'aide de l'UI au lieu d'exécuter une requête?
J'ai remarqué que le comportement mentionné, il semble que BigQuery ne montre pas le travail dans l'historique de la requête ni avec le commandement "BQ LS", pour cette raison, je vous suggère de soulever un Demande de fonctionnalité Demander cette fonctionnalité.
Il semble que vous ne puissiez pas voir la table créée / supprimée lors de l'utilisation de l'interface utilisateur avec l'historique de la requête. Mais, vous pouvez voir les journaux dans StackDriver Logs filtrage par BigQuery. Il n'y a pas d'emploi BQ créé, mais il y a un appel à l'API qui peut être suivi à travers les journaux. P>
du BigQuery Audit Logs , vous pouvez rechercher une insertion ( google.cloud.bigquerery.v2.taservice.insertable code>) et Supprimer (
google.cloud.bigquerery.v2.TAalevice.Delettable code>). S'il existe des actions de ces types, ils sont affichés le champ code> MethodName code>, voir Exemple ci-dessous. Je l'ai eu avec cette requête:
{
insertId: "yyyzzz"
logName: "projects/my-project/logs/cloudaudit.googleapis.com%2Factivity"
protoPayload: {
@type: "type.googleapis.com/google.cloud.audit.AuditLog"
authenticationInfo: {
principalEmail: "user@test.com"
}
authorizationInfo: [1]
metadata: {â¦}
methodName: "google.cloud.bigquery.v2.TableService.DeleteTable"
requestMetadata: {
callerIp: "189.00.00.00"
callerSuppliedUserAgent: "Mozilla/5.0 (X11; CrOS x86_64 12739.105.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.158 Safari/537.36,gzip(gfe)"
destinationAttributes: {â¦}
requestAttributes: {â¦}
}
resourceName: "projects/my-project/datasets/my-dataset/tables/my-table"
serviceName: "bigquery.googleapis.com"
status: {
}
}
receiveTimestamp: "2020-03-31T16:51:31.977240157Z"
resource: {â¦}
severity: "NOTICE"
timestamp: "2020-03-31T16:51:31.590Z"
}