Granska och övervaka datadelning
Den här artikeln beskriver hur dataleverantörer och mottagare kan använda granskningsloggar för att övervaka Delta Sharing-händelser. Providerns granskningsloggar registrerar åtgärder som vidtagits av providern och åtgärder som vidtagits av mottagarna på leverantörens delade data. Mottagargranskningsloggar registrerar händelser som rör åtkomst till resurser och hantering av providerobjekt.
För att se listan över Delta Sharing granskningslogghändelser, se Deltadelningshändelser.
Krav
För att få åtkomst till granskningsloggar måste en kontoadministratör aktivera systemtabellen för granskningsloggar för ditt Azure Databricks-konto. Se Aktivera systemtabeller. Information om systemtabellen för granskningsloggar finns i Tabellreferens för granskningsloggsystem.
Om du inte är kontoadministratör eller metaarkivadministratör måste du få åtkomst till system.access.audit
att läsa granskningsloggar.
Visa händelser för Delta-delnings i granskningsloggen
Om ditt konto har systemtabeller aktiverade lagras granskningsloggar i system.access.audit
. Om ditt konto också har en konfiguration för leverans av granskningsloggar måste du känna till bucketen och sökvägen till var loggarna levereras.
Loggade händelser
För att visa listan över granskningshändelser i loggen för Delta Sharing, se Deltadelningshändelser.
Visa information om en mottagares frågeresultat
Deltadelning stöder delning av tillgångstyper som tabeller, vyer, materialiserade vyer, strömningsfunktioner och volymer. Deltadelning ger tillfällig läsåtkomst till underliggande data från antingen försignerade URL:er eller från begränsade STS-token. I följande tabell beskrivs hur delningstypen motsvarar de loggade granskningslogghändelserna:
Scenario | Granskningslogghändelser |
---|---|
Tabeller som delas med öppna mottagare och tabeller utan historik som delas med Databricks-mottagare |
|
Tabell med historik som delas med Databricks-mottagare |
|
Volymdelning (STS-tokenbaserad åtkomst) |
|
Visa detaljer om försignerade URL-delningar
I providerloggarna loggas händelserna deltaSharingQueriedTableChanges
och deltaSharingQueriedTable
när en datamottagares fråga får ett svar på försignerad URL-baserad delning. Leverantörer kan visa fältet i response.result
dessa loggar för att se mer information om vad som delades med mottagaren. Fältet kan innehålla följande värden. Den här listan är inte fullständig.
"checkpointBytes": "0",
"earlyTermination": "false",
"maxRemoveFiles": "0",
"path": "file: example/s3/path/golden/snapshot-data0/_delta_log",
"deltaSharingPartitionFilteringAccessed": "false",
"deltaSharingRecipientId": "<redacted>",
"deltaSharingRecipientIdHash": "<recipient-hash-id>",
"jsonLogFileNum": "1",
"scannedJsonLogActionNum": "5",
"numRecords": "3",
"deltaSharingRecipientMetastoreId": "<redacted>",
"userAgent": "Delta-Sharing-Unity-Catalog-Databricks-Auth/1.0 Linux/4.15.0-2068-azure-fips OpenJDK_64-Bit_Server_VM/11.0.7+10-jvmci-20.1-b02 java/11.0.7 scala/2.12.15 java_vendor/GraalVM_Community",
"jsonLogFileBytes": "2846",
"checkpointFileNum": "0",
"metastoreId": "<redacted>",
"limitHint": "Some(1)",
"tableName": "cookie_ingredients",
"tableId": "1234567c-6d8b-45fd-9565-32e9fc23f8f3",
"activeAddFiles": "2", // number of AddFiles returned in the query
"numAddFiles": "2", // number of AddFiles returned in the query
"numAddCDCFiles": "2", // number of AddFiles returned in the CDF query
"numRemoveFiles": "2", // number of RemoveFiles returned in the query
"numSeenAddFiles": "3",
"scannedAddFileSize": "1300", // file size in bytes for the AddFile returned in the query
"scannedAddCDCFileSize": "1300", // file size in bytes for the AddCDCFile returned in the CDF query
"scannedRemoveFileSize": "1300", // file size in bytes for the RemoveFile returned in the query
"scannedCheckpointActionNum": "0",
"tableVersion": "0"
Visa information om STS-tokenresurser
I providerloggarna loggas händelserna generateTemporaryTableCredentials
och generateTemporaryVolumeCredentials
när en datamottagares fråga får ett svar för STS-tokenbaserad delning. Leverantörer kan visa kolumnen request_params
i dessa loggar för att se mer information om vad som delades med mottagaren. Fältet kan innehålla följande värden. Den här listan är inte fullständig.
"recipient_name": "someRecipientName"
"share_id": "ea7a4555-43d9-4cbd-a5df-f4f5193f297e"
"credential_type": "StorageCredential"
"is_permissions_enforcing_client": "true"
"table_full_name": "someTableName"
"operation": "READ"
"share_name": "someShareName"
"table_id": "someTableId"
"share_owner": "someShareOwner"
"recipient_id": "someRecipientId"
"table_url": "s3://somePath"
"metastore_id": "someMetastoreId"
Loggade fel
Om en Delta Sharing-åtgärd misslyckas loggas åtgärden med felmeddelandet i response.error_message
-fältet i loggen. Objekt mellan <
och >
tecken representerar platshållartext.
Felmeddelanden i providerloggar
Delta Sharing loggar följande fel för dataleverantörer:
Delta-delning är inte aktiverat i det valda metaarkivet.
DatabricksServiceException: FEATURE_DISABLED: Delta Sharing is not enabled
Man försökte utföra en operation på en katalog som inte finns.
DatabricksServiceException: CATALOG_DOES_NOT_EXIST: Catalog ‘<catalog>’ does not exist.
En användare som inte är kontoadministratör eller metaarkivadministratör försökte utföra en privilegierad åtgärd.
DatabricksServiceException: PERMISSION_DENIED: Only administrators can <operation-name> <operation-target>
En åtgärd försökte utföras på ett metaarkiv från en arbetsyta som metaarkivet inte har tilldelats till.
DatabricksServiceException: INVALID_STATE: Workspace <workspace-name> is no longer assigned to this metastore
En begäran saknade mottagarnamnet eller delningsnamnet.
DatabricksServiceException: INVALID_PARAMETER_VALUE: CreateRecipient/CreateShare Missing required field: <recipient-name>/<share-name>
En begäran innehöll ett ogiltigt mottagarnamn eller delningsnamn.
DatabricksServiceException: INVALID_PARAMETER_VALUE: CreateRecipient/CreateShare <recipient-name>/<share-name> is not a valid name
En användare försökte dela en tabell som inte finns i ett Unity Catalog-metaarkiv.
DatabricksServiceException: INVALID_PARAMETER_VALUE: Only managed or external table on Unity Catalog can be added to a share
En användare försökte rotera en mottagare som redan var i ett roterat tillstånd och vars tidigare token ännu inte hade upphört att gälla.
DatabricksServiceException: INVALID_PARAMETER_VALUE: There are already two active tokens for recipient <recipient-name>
En användare försökte skapa en ny mottagare eller delning med samma namn som en befintlig.
DatabricksServiceException: RECIPIENT_ALREADY_EXISTS/SHARE_ALREADY_EXISTS: Recipient/Share <name> already exists`
En användare försökte utföra en åtgärd på en mottagare eller delning som inte finns.
DatabricksServiceException: RECIPIENT_DOES_NOT_EXIST/SHARE_DOES_NOT_EXIST: Recipient/Share '<name>' does not exist
En användare försökte lägga till en tabell i en delning, men tabellen hade redan lagts till.
DatabricksServiceException: RESOURCE_ALREADY_EXISTS: Shared Table '<name>' already exists
En användare försökte utföra en åtgärd som refererade till en tabell som inte finns.
DatabricksServiceException: TABLE_DOES_NOT_EXIST: Table '<name>' does not exist
En användare försökte utföra en åtgärd som refererade till ett schema som inte fanns.
DatabricksServiceException: SCHEMA_DOES_NOT_EXIST: Schema '<name>' does not exist
En användare försökte komma åt en delning som inte finns.
DatabricksServiceException: SHARE_DOES_NOT_EXIST: Share <share-name> does not exist.
Felmeddelanden i mottagarloggar
Delta Sharing loggar följande fel för datamottagare:
Användaren försökte komma åt en delning som de inte har behörighet att komma åt.
DatabricksServiceException: PERMISSION_DENIED: User does not have SELECT on Share <share-name>
Användaren försökte komma åt en delning som inte finns.
DatabricksServiceException: SHARE_DOES_NOT_EXIST: Share <share-name> does not exist.
Användaren försökte komma åt en tabell som inte finns i delningen.
DatabricksServiceException: TABLE_DOES_NOT_EXIST: <table-name> does not exist.