Pengelogan diagnostik di Azure Databricks

Azure Databricks menyediakan log diagnostik menyeluruh yang komprehensif dari aktivitas yang dilakukan oleh pengguna Azure Databricks, memungkinkan perusahaan Anda memantau pola penggunaan Azure Databricks yang terperinci.

Untuk daftar masing-masing jenis peristiwa ini dan layanan terkait, lihat Peristiwa. Beberapa peristiwa dikeluarkan dalam log audit hanya jika log audit verbose diaktifkan untuk ruang kerja.

Mengonfigurasi log audit verbose

Selain peristiwa default, Anda dapat mengonfigurasi ruang kerja untuk menghasilkan peristiwa tambahan dengan mengaktifkan log audit verbose.

Tindakan buku catatan tambahan

Tindakan tambahan dalam kategori log audit notebook:

  • Nama tindakan runCommand, dikeluarkan setelah Azure Databricks menjalankan perintah di buku catatan. Perintah sesuai dengan sel dalam buku catatan.

    Parameter permintaan:

    • notebookId: ID Buku Catatan
    • executionTime: Durasi perintah dalam hitungan detik. Ini adalah nilai desimal seperti 13.789.
    • status: Status perintah. Nilai yang mungkin adalah finished (perintah selesai), skipped (perintah dilewati), cancelled (perintah dibatalkan), atau failed (perintah gagal).
    • commandId: Dapatkan ID unik untuk perintah ini.
    • commandText: Teks perintah. Untuk perintah multibaris, baris dipisahkan oleh karakter baris baru.

Tindakan SQL Databricks lainnya

Tindakan tambahan dalam kategori log audit databrickssql:

  • Nama tindakan commandSubmit, yang berjalan saat perintah dikirimkan ke SQL Databricks.

    Parameter permintaan:

    • commandText: Pernyataan atau perintah SQL yang ditentukan oleh pengguna.
    • warehouseId: ID untuk gudang SQL.
    • commandId: ID perintah.
  • Nama commandFinishtindakan, yang berjalan saat perintah selesai atau dibatalkan.

    Parameter permintaan:

    • warehouseId: ID untuk gudang SQL.
    • commandId: ID perintah.

    Periksa bidang response untuk mengetahui informasi tambahan yang terkait dengan hasil perintah:

    • statusCode - kode respons HTTP. Ini akan menjadi kesalahan 400 jika itu merupakan kesalahan umum.

    • errorMessage - Pesan kesalahan.

      Penting

      Dalam beberapa kasus untuk perintah jangka panjang tertentu, bidang errorMessage mungkin tidak diisi pada saat terjadi kegagalan.

    • result: Bidang ini kosong.

Mengaktifkan atau menonaktifkan log audit verbose

  1. Sebagai admin, buka konsol admin Azure Databricks.
  2. Klik Pengaturan Ruang Kerja.
  3. Di samping Log Audit Verbose, aktifkan atau nonaktifkan fitur.

Saat Anda mengaktifkan atau menonaktifkan pengelogan verbose, peristiwa yang dapat diaudit dipancarkan dalam kategori workspace dengan tindakan workspaceConfKeys. Parameter workspaceConfKeys permintaan adalah enableVerboseAuditLogs. Parameter workspaceConfValues permintaan adalah true (fitur diaktifkan) atau false (fitur dinonaktifkan).

Mengonfigurasi pengiriman log diagnostik

Catatan

Log diagnostik memerlukan Paket Premium.

  1. Masuk ke portal Azure sebagai Pemilik atau Kontributor untuk ruang kerja Azure Databricks dan klik sumber daya Layanan Azure Databricks Anda.

  2. Di bagian Pemantauan bilah sisi, klik tab Pengaturan diagnostik.

  3. Klik Mengaktifkan diagnostik.

    Mengaktifkan diagnostik Azure Databricks

  4. Pada halaman Pengaturan diagnostik, berikan konfigurasi berikut:

    Nama

    Masukkan nama untuk log yang akan dibuat.

    Mengarsipkan ke akun penyimpanan

    Untuk menggunakan opsi ini, Anda memerlukan akun penyimpanan yang sudah ada untuk disambungkan. Untuk membuat akun penyimpanan baru di portal, lihat Membuat akun penyimpanan dan ikuti petunjuk untuk membuat Azure Resource Manager, akun tujuan umum. Kemudian kembali ke halaman ini di portal untuk memilih akun penyimpanan Anda. Mungkin perlu waktu beberapa menit agar akun penyimpanan yang baru dibuat muncul di menu drop-down. Untuk informasi tentang biaya tambahan yang dikeluarkan dengan menulis ke akun penyimpanan, lihat harga Azure Storage.

    Melakukan streaming ke hub acara

    Untuk menggunakan opsi ini, Anda memerlukan ruang nama Azure Event Hubs dan hub aktivitas yang sudah ada untuk disambungkan. Untuk membuat namspace Event Hubs, lihat Buat ruang nama Event Hubs dan hub aktivitas menggunakan portal Azure. Kemudian kembali ke halaman ini di portal untuk memilih nama kebijakan dan ruang nama Event Hubs. Untuk informasi tentang biaya tambahan yang dikeluarkan dengan menulis ke hub aktivitas, lihat harga Azure Event Hubs.

    Mengirim ke Log Analytics

    Untuk menggunakan opsi ini, gunakan ruang kerja Analitik Log yang sudah ada atau buat yang baru dengan mengikuti langkah-langkah untuk Membuat ruang kerja baru di portal. Untuk informasi tentang biaya tambahan yang dikeluarkan dengan mengirimkan log ke Analitik Log, lihat Harga Azure Monitor.

    Pengaturan Azure Databricks Diagnostics

  5. Pilih layanan yang Anda inginkan untuk log diagnostik dan tetapkan kebijakan retensi.

    Retensi hanya berlaku untuk akun penyimpanan. Jika Anda tidak ingin menerapkan kebijakan retensi dan ingin mempertahankan data selamanya, atur Retensi (hari) ke 0.

  6. Pilih Simpan.

  7. Jika Anda menerima kesalahan yang mengatakan "Gagal memperbarui diagnostik untuk . Langganan tidak terdaftar untuk menggunakan microsoft.insights," ikuti petunjuk Memecahkan Masalah Azure Diagnostics untuk mendaftarkan akun dan kemudian coba lagi prosedur ini.

  8. Jika Anda ingin mengubah cara log sumber daya disimpan kapan saja di masa mendatang, Anda bisa kembali ke halaman ini untuk mengubah pengaturan log diagnostik untuk akun anda.

Mengaktifkan pengelogan menggunakan PowerShell

  1. Mulai sesi Azure PowerShell dan masuk ke akun Azure Anda dengan perintah berikut:

    Connect-AzAccount
    

    Jika Anda belum menginstal Azure Powershell, gunakan perintah berikut untuk menginstal Azure PowerShell dan mengimpor modul Azure RM.

    Install-Module -Name Az -AllowClobber
    Import-Module AzureRM
    
  2. Di jendela browser pop-up, masukkan nama pengguna dan kata sandi akun Azure Anda. Azure PowerShell mendapatkan semua langganan yang terkait dengan akun ini, dan secara default, menggunakan langganan pertama.

    Jika Anda memiliki lebih dari satu langganan, Anda mungkin harus menentukan langganan tertentu yang digunakan untuk membuat brankas kunci Azure Anda. Untuk melihat langganan untuk akun Anda, ketik perintah berikut:

    Get-AzSubscription
    

    Untuk menentukan langganan yang terkait dengan akun Azure Databricks yang Anda masuk, ketik perintah berikut:

    Set-AzContext -SubscriptionId <subscription ID>
    
  3. Atur nama sumber daya Log Analytics Anda ke variabel bernama logAnalytics, di mana ResourceName nama ruang kerja Log Analytics.

    $logAnalytics = Get-AzResource -ResourceGroupName <resource group name> -ResourceName <resource name> -ResourceType "Microsoft.OperationalInsights/workspaces"
    
  4. Atur nama sumber daya layanan Azure Databricks ke variabel bernama databricks, di mana ResourceName nama layanan Azure Databricks.

    $databricks = Get-AzResource -ResourceGroupName <your resource group name> -ResourceName <your Azure Databricks service name> -ResourceType "Microsoft.Databricks/workspaces"
    
  5. Untuk mengaktifkan pengelogan untuk Azure Databricks, gunakan cmdlet Set-AzDiagnosticSetting dengan variabel untuk akun penyimpanan baru, layanan Azure Databricks, dan kategori untuk mengaktifkan pengelogan. Jalankan perintah berikut dan atur bendera -Enabled ke $true:

    Set-AzDiagnosticSetting -ResourceId $databricks.ResourceId -WorkspaceId $logAnalytics.ResourceId -Enabled $true -name "<diagnostic setting name>" -Category <comma separated list>
    

Aktifkan pengelogan dengan menggunakan Azure CLI

  1. Buka PowerShell.

  2. Gunakan perintah berikut untuk terhubung ke akun Azure Anda:

    az login
    
  3. Jalankan perintah pengaturan diagnostik berikut:

    az monitor diagnostic-settings create --name <diagnostic name>
    --resource-group <log analytics workspace resource group>
    --workspace <log analytics name or object ID>
    --resource <target resource object ID>
    --logs '[
    {
      \"category\": <category name>,
      \"enabled\": true
    }
    ]'
    

REST API

Gunakan API LogSettings.

Minta

PUT https://management.azure.com/{resourceUri}/providers/microsoft.insights/diagnosticSettings/{name}?api-version=2017-05-01-preview

Isi permintaan

{
    "properties": {
    "workspaceId": "<log analytics resourceId>",
    "logs": [
      {
        "category": "<category name>",
        "enabled": true,
        "retentionPolicy": {
          "enabled": false,
          "days": 0
        }
      }
    ]
  }
}

Pengiriman log diagnostik

Setelah pengelogan diaktifkan untuk akun Anda, Azure Databricks secara otomatis mulai mengirim log diagnostik ke lokasi pengiriman Anda. Log tersedia dalam waktu 15 menit setelah aktivasi. Aktivitas yang dapat diaudit Azure Databricks biasanya muncul dalam log diagnostik dalam waktu 15 menit di wilayah Azure Commercial.

Catatan

Log login SSH dikirimkan dengan latensi tinggi.

skema log diagnostik

Skema catatan log diagnostik adalah sebagai berikut:

Bidang Deskripsi
operationversion Versi skema dari format log diagnostik.
time Tanda waktu UTC tindakan.
properties.sourceIPAddress Alamat IP dari permintaan sumber.
properties.userAgent Browser atau klien API yang digunakan untuk membuat permintaan.
properties.sessionId ID Sesi tindakan.
identities Informasi tentang pengguna yang membuat permintaan:

* email: Alamat email pengguna.
category layanan yang mencatat permintaan.
operationName Tindakan, seperti login, logout, membaca, atau menulis. Diformat sebagai Microsoft.Databricks/<category>/<actionName>, misalnya Microsoft.Databricks/jobs/create.
properties.requestId ID permintaan unik.
properties.requestParams Parameter pasangan nilai kunci yang digunakan dalam aktivitas.

Bidang requestParams tunduk pada pemotongan. Jika ukuran representasi JSON-nya melebihi 100 KB, nilai terpotong dan string "... truncated" ditambahkan ke entri terpotong. Dalam kasus yang jarang terjadi di mana peta terpotong masih lebih besar dari 100 KB, satu TRUNCATED kunci dengan nilai kosong hadir sebagai gantinya.
properties.response Tanggapan atas permintaan:

* errorMessage: Pesan kesalahan jika ada kesalahan.
* result: Hasil dari permintaan.
* statusCode: kode status HTTP yang menunjukkan apakah permintaan berhasil atau tidak.
properties.logId Pengidentifikasi unik untuk pesan log.

Acara

Properti category (layanan Azure Databricks) dan operationName mengidentifikasi peristiwa dalam catatan log. Azure Databricks menyediakan log diagnostik untuk kategori (layanan) berikut:

accounts Peristiwa yang terkait dengan akun, pengguna, grup, dan daftar akses IP.
clusters Peristiwa yang terkait dengan kluster.
dbfs Peristiwa yang terkait dengan DBFS.
deltaPipelines Peristiwa yang terkait dengan alur Delta Live Table.
featureStore Peristiwa yang terkait dengan Penyimpanan Fitur Databricks.
genie Peristiwa yang terkait dengan akses ruang kerja oleh personel dukungan.
globalInitScripts Peristiwa yang terkait dengan skrip init global.
instancePools Peristiwa yang terkait dengan kumpulan.
jobs Peristiwa yang terkait dengan pekerjaan.
mlflowAcledArtifact Peristiwa yang terkait dengan artefak ML Flow dengan ACL.
mlflowExperiment Peristiwa yang terkait dengan eksperimen ML Flow.
modelRegistry Peristiwa yang terkait dengan registri model.
notebook Peristiwa yang terkait dengan notebook.
repos Peristiwa yang terkait dengan Repositori Databricks.
secrets Peristiwa yang terkait dengan rahasia.
ssh Peristiwa yang terkait dengan akses SSH, yang dinonaktifkan secara default.
unityCatalog Peristiwa yang terkait dengan Katalog Unity, yang dinonaktifkan secara default.
workspace Peristiwa yang terkait dengan ruang kerja.

Jika tindakan memakan waktu lama, permintaan dan respons dicatat secara terpisah, tetapi pasangan permintaan dan respons memiliki properties.requestId yang sama.

Dengan pengecualian operasi terkait mount, log diagnostik Azure Databricks tidak menyertakan operasi terkait DBFS.

Tindakan otomatis dilakukan oleh pengguna System-User. Misalnya, saat Azure Databricks mengubah ukuran kluster melalui fitur penskalaan otomatis atau meluncurkan pekerjaan karena penjadwalan pekerjaan.

Tabel berikut mencantumkan tindakan yang tersedia untuk setiap kategori. Tindakan dan kategori membantu membentuk bidang operationName untuk setiap entri log. Bidang tersebut diformat seperti Microsoft.Databricks/<category>/<actionName>, misalnya Microsoft.Databricks/jobs/create.

Kategori Nama tindakan Parameter permintaan
accounts IpAccessDenied path, userId
aadBrowserLogin user
aadTokenLogin user
activateUser warehouse, targetUserId, targetUserName
add warehouse, targetUserId, targetUserName
addPrincipalToGroup warehouse, targetGroupId, targetGroupName, targetUserId, targetUserName
changeDatabricksSqlAcl aclPermissionSet, resourceId, shardName, targetUserId
changeDatabricksWorkspaceAcl aclPermissionSet, resourceId, shardName, targetUserId
changeDbTokenAcl aclPermissionSet, resourceId, shardName, targetUserId
createGroup warehouse, targetGroupId, targetGroupName
createIpAccessList ipAccessListId, userId
deactivateUser warehouse, targetUserId, targetUserName
delete warehouse, targetUserId, targetUserName
deleteIpAccessList ipAccessListId, userId
disableClusterAcls warehouse
disableTableAcls warehouse
disableWorkspaceAcls warehouse
enableClusterAcls warehouse
enableTableAcls warehouse
enableWorkspaceAcls warehouse
garbageCollectDbToken tokenClientId, tokenCreationTime, tokenExpirationTime, tokenFirstAccessed, userId
generateDbToken tokenCreatedBy, tokenExpirationTime, userId
ipAccessListQuotaExceeded userId
jwtLogin user
login user
logout user
privateLinkValidationFailed userId
reachMaxQuotaDbToken userId
removeAdmin warehouse, targetUserId, targetUserName
removeGroup warehouse, targetGroupId, targetGroupName
removePrincipalFromGroup warehouse, targetGroupId, targetGroupName, targetUserId, targetUserName
revokeDbToken userId
setAdmin warehouse, targetUserId, targetUserName
tokenLogin tokenId, user
updateIpAccessList ipAccessListId, userId
updateUser warehouse, targetUserId, targetUserName
databrickssql addDashboardWidget dashboardId, widgetId
cancelQueryExecution queryExecutionId
changeWarehouseAcls aclPermissionSet, resourceId, shardName, targetUserId
changePermissions granteeAndPermission, objectId, objectType
cloneDashboard dashboardId
createAlertDestination alertDestinationId, alertDestinationType
createDashboard dashboardId
createDataPreviewDashboard dashboardId
createWarehouse auto_resume, auto_stop_mins, channel, cluster_size, conf_pairs, custom_cluster_confs, enable_databricks_compute, enable_photon, enable_serverless_compute, instance_profile_arn, max_num_clusters, min_num_clusters, name, size, spot_instance_policy, tags, test_overrides
createQuery queryId
createQueryDraft queryId
createQuerySnippet querySnippetId
createRefreshSchedule alertId, dashboardId, refreshScheduleId
createSampleDashboard sampleDashboardId
createSubscription dashboardId, refreshScheduleId, subscriptionId
createVisualization queryId, visualizationId
deleteAlert alertId
deleteAlertDestination alertDestinationId
deleteDashboard dashboardId
deleteDashboardWidget widgetId
deleteWarehouse id
deleteExternalDatasource dataSourceId
deleteQuery queryId
deleteQueryDraft queryId
deleteQuerySnippet querySnippetId
deleteRefreshSchedule alertId, dashboardId, refreshScheduleId
deleteSubscription subscriptionId
deleteVisualization visualizationId
downloadQueryResult fileType, queryId, queryResultId
editWarehouse auto_stop_mins, channel, cluster_size, confs, enable_photon, enable_serverless_compute, id, instance_profile_arn, max_num_clusters, min_num_clusters, name, spot_instance_policy, tags
executeAdhocQuery dataSourceId
executeSavedQuery queryId
executeWidgetQuery widgetId
favoriteDashboard dashboardId
favoriteQuery queryId
forkQuery originalQueryId, queryId
listQueries filter_by, include_metrics, max_results, page_token
moveDashboardToTrash dashboardId
moveQueryToTrash queryId
muteAlert alertId
publishBatch statuses
publishDashboardSnapshot dashboardId, hookId, subscriptionId
restoreDashboard dashboardId
restoreQuery queryId
setWarehouseConfig data_access_config, enable_serverless_compute, instance_profile_arn, security_policy, serverless_agreement, sql_configuration_parameters, try_create_databricks_managed_starter_warehouse
snapshotDashboard dashboardId
startWarehouse id
stopWarehouse id
subscribeAlert alertId, destinationId
transferObjectOwnership newOwner, objectId, objectType
unfavoriteDashboard dashboardId
unfavoriteQuery queryId
unmuteAlert alertId
unsubscribeAlert alertId, subscriberId
updateAlert alertId, queryId
updateAlertDestination alertDestinationId
updateDashboard dashboardId
updateDashboardWidget widgetId
updateOrganizationSetting has_configured_data_access, has_explored_sql_warehouses, has_granted_permissions
updateQuery queryId
updateQueryDraft queryId
updateQuerySnippet querySnippetId
updateRefreshSchedule alertId, dashboardId, refreshScheduleId
updateVisualization visualizationId
clusters changeClusterAcl aclPermissionSet, resourceId, shardName, targetUserId
changeClusterPolicyAcl aclPermissionSet, resourceId, shardName, targetUserId
create acl_path_prefix, apply_policy_default_values, autoscale, autotermination_minutes, azure_attributes, billing_info, cluster_creator, cluster_event_notification_info, cluster_log_conf, cluster_name, cluster_source, custom_tags, data_security_mode, disk_spec, docker_image, driver_instance_pool_id, driver_instance_source, driver_node_type_id, enable_elastic_disk, enable_jobs_autostart, enable_local_disk_encryption, idempotency_token, init_scripts, instance_pool_id, instance_source, no_driver_daemon, node_type_id, num_workers, organization_id, policy_id, single_user_name, spark_conf, spark_env_vars, spark_version, ssh_public_keys, start_cluster, user_id, validate_cluster_name_uniqueness
createResult clusterId, clusterName, clusterOwnerUserId, clusterState, clusterWorkers
delete cluster_id, termination_reason
deleteResult clusterId, clusterName, clusterOwnerUserId, clusterState, clusterWorkers
edit apply_policy_default_values, autoscale, autotermination_minutes, azure_attributes, cluster_id, cluster_log_conf, cluster_name, cluster_source, custom_tags, data_security_mode, disk_spec, docker_image, driver_instance_pool_id, driver_instance_source, driver_node_type_id, enable_elastic_disk, enable_local_disk_encryption, init_scripts, instance_pool_id, instance_source, no_driver_daemon, node_type_id, num_workers, policy_id, single_user_name, spark_conf, spark_env_vars, spark_version, ssh_public_keys, validate_cluster_name_uniqueness, workload_type
permanentDelete cluster_id
resize autoscale, avoid_containers, cause, cluster_id, next_attempt_time_ms, num_workers
resizeResult clusterId, clusterName, clusterOwnerUserId, clusterState, clusterWorkers
restart cluster_id
restartResult clusterId, clusterName, clusterOwnerUserId, clusterState, clusterWorkers
start cluster_id
startResult clusterId, clusterName, clusterOwnerUserId, clusterState, clusterWorkers
dbfs addBlock data_length, handle
close handle
create bufferSize, overwrite, path
delete path, recursive
getSessionCredentials mountPoint
mkdirs path
mount mountPoint, owner
move destination_path, dst, source_path, src
put overwrite, path
unmount mountPoint
updateMount mountPoint, owner
deltaPipelines create allow_duplicate_names, clusters, configuration, continuous, development, dry_run, id, libraries, name, storage, target, channel, edition, photon, dbr_version (internal, jangan gunakan), email_notifications (internal, jangan gunakan), filters (tidak digunakan lagi),
delete pipeline_id
edit allow_duplicate_names, clusters, configuration, continuous, dbr_version (internal, jangan gunakan), development, email_notifications (internal, jangan gunakan), expected_last_modified, filters (tidak digunakan lagi), id, libraries, name, pipeline_id, storage, target, channel, edition, photon
startUpdate cause, full_refresh, job_task, pipeline_id
stop pipeline_id
featureStore addConsumer features, job_run, notebook
addDataSources feature_table, paths, tables
addProducer feature_table, job_run, notebook
changeFeatureTableAcl aclPermissionSet, resourceId, shardName, targetUserId
createFeatureTable description, name, partition_keys, primary_keys, timestamp_keys
createFeatures feature_table, features
deleteFeatureTable name
deleteTags feature_table_id, keys
getConsumers feature_table
getFeatureTable name
getFeatureTablesById ids
getFeatures feature_table, max_results
getModelServingMetadata feature_table_features
getOnlineStore cloud, feature_table, online_table, store_type
getTags feature_table_id
publishFeatureTable cloud, feature_table, host, online_table, port, read_secret_prefix, store_type, write_secret_prefix
searchFeatureTables max_results, page_token, text
setTags feature_table_id, tags
updateFeatureTable description, name
genie databricksAccess approver, authType, duration, isCriticalUser, reason, user
globalInitScripts batch-reorder script_ids
create enabled, name, position, script-SHA256
delete script_id
update enabled, name, position, script-SHA256, script_id
instancePools changeInstancePoolAcl aclPermissionSet, resourceId, shardName, targetUserId
create azure_attributes, custom_tags, disk_spec, enable_elastic_disk, idle_instance_autotermination_minutes, instance_pool_name, max_capacity, min_idle_instances, node_type_id, preloaded_docker_images, preloaded_spark_versions
delete instance_pool_id
edit azure_attributes, custom_tags, disk_spec, enable_elastic_disk, idle_instance_autotermination_minutes, instance_pool_id, instance_pool_name, max_capacity, min_idle_instances, node_type_id, preloaded_spark_versions
jobs cancel run_id
cancelAllRuns job_id
changeJobAcl aclPermissionSet, resourceId, shardName, targetUserId
create access_control_list, dbt_task, email_notifications, existing_cluster_id, format, git_source, is_from_dlt, job_clusters, job_type, libraries, max_concurrent_runs, max_retries, min_retry_interval_millis, name, new_cluster, notebook_task, pipeline_task, python_wheel_task, retry_on_timeout, schedule, shell_command_task, spark_jar_task, spark_python_task, spark_submit_task, tasks, timeout_seconds
delete job_id
deleteRun run_id
repairRun latest_repair_id, rerun_tasks, run_id
reset is_from_dlt, job_id, new_settings
resetJobAcl grants, job_id
runFailed clusterId, idInJob, jobClusterType, jobId, jobTaskType, jobTerminalState, jobTriggerType, orgId, runId
runNow jar_params, job_id, notebook_params, python_params, spark_submit_params, workflow_context
runStart clusterId, idInJob, jobClusterType, jobId, jobTaskType, jobTerminalState, jobTriggerType, orgId, runId
runSucceeded clusterId, idInJob, jobClusterType, jobId, jobTaskType, jobTerminalState, jobTriggerType, orgId, runId
setTaskValue key, run_id
submitRun access_control_list, existing_cluster_id, idempotency_token, job_cluster_key, job_clusters, libraries, new_cluster, notebook_task, run_name, shell_command_task, spark_jar_task, spark_python_task, spark_submit_task, tasks, timeout_seconds, workflow_context
update fields_to_remove, job_id, new_settings
mlflowAcledArtifact readArtifact artifactLocation, experimentId, runId
writeArtifact artifactLocation, experimentId, runId
mlflowExperiment deleteMlflowExperiment experimentId, experimentName, path
moveMlflowExperiment experimentId, newPath, oldPath
renameMlflowExperimentEvent experimentId, newName, oldName, parentPath
restoreMlflowExperiment experimentId, experimentName, path
modelRegistry approveTransitionRequest archive_existing_versions, comment, name, stage, version
changeRegisteredModelAcl aclPermissionSet, resourceId, shardName, targetUserId
createComment comment, name, version
createModelVersion description, name, run_id, run_link, source, tags
createRegisteredModel description, name, tags
createRegistryWebhook description, events, http_url_spec, job_spec, model_name, status
createTransitionRequest comment, name, stage, version
deleteModelVersion name, version
deleteModelVersionTag key, name, version
deleteRegisteredModel name
deleteRegisteredModelTag key, name
deleteRegistryWebhook id
deleteTransitionRequest comment, creator, name, stage, version
finishCreateModelVersionAsync name, version
generateBatchInferenceNotebook input_data, name, output_path, stage, version
getModelVersionDownloadUri name, version
getModelVersionSignedDownloadUri name, path, version
listModelArtifacts name, path, version
listRegistryWebhooks max_results, model_name
rejectTransitionRequest comment, name, stage, version
renameRegisteredModel name, new_name
setEmailSubscriptionStatus model_name, subscription_type
setModelVersionTag key, name, value, version
setRegisteredModelTag key, name, value
setUserLevelEmailSubscriptionStatus subscription_type
testRegistryWebhook id
transitionModelVersionStage archive_existing_versions, comment, name, stage, version
updateRegistryWebhook description, events, http_url_spec, id, status
notebook attachNotebook clusterId, notebookId, path
cloneNotebook notebookId, path
createNotebook notebookId, path
deleteFolder path
deleteNotebook notebookId, notebookName, path
detachNotebook clusterId, notebookId, path
downloadLargeResults notebookFullPath, notebookId
downloadPreviewResults notebookFullPath, notebookId
importNotebook path, workspaceExportFormat
moveNotebook newPath, notebookId, oldPath
renameNotebook newName, notebookId, oldName, parentPath
restoreFolder path
restoreNotebook notebookId, notebookName, path
runCommand (hanya untuk log audit verbose) notebookId, executionTime, status, commandId, commandText (lihat detail)
takeNotebookSnapshot path
repos checkoutBranch branch, id
commitAndPush checkSensitiveToken, files, id, message
createRepo git_provider, git_url, path, provider, url
deleteRepo id
discard file_paths, id
getRepo id
listRepos next_page_token, path_prefix
pull id
updateRepo branch, git_provider, git_url, id, path, tag, workspace_filesystem_enabled
secrets createScope backend_azure_keyvault, initial_manage_principal, is_databricks_managed, scope, scope_backend_type
deleteAcl principal, scope
deleteScope scope
deleteSecret key, scope
getAcl principal, scope
getSecret key, scope
listAcls scope
listSecrets scope
putAcl permission, principal, scope
putSecret key, scope, string_value
sqlPermissions changeSecurableOwner principal, securable
createSecurable securable
denyPermission permission
grantPermission permission
removeAllPermissions securable
renameSecurable after, before
requestPermissions denied, permitted, requests, truncated
revokePermission permission
showPermissions principal, securable
ssh login containerId, instanceId, port, publicKey, userName
logout containerId, instanceId, userName
unityCatalog (Pratinjau Umum, dapat berubah) createCatalog comment, metastore_id, name, workspace_id
createDataAccessConfiguration metastore_id, name, workspace_id
createExternalLocation comment, credential_name, metastore_id, name, url, workspace_id
createMetastore metastore_id, name, storage_root, workspace_id
createMetastoreAssignment default_catalog_name, metastore_id, workspace_id
createRecipient comment, metastore_id, name, workspace_id
createSchema catalog_name, comment, metastore_id, name, workspace_id
createShare comment, metastore_id, name, workspace_id
createStagingTable catalog_name, metastore_id, name, schema_name, workspace_id
createStorageCredential azure_service_principal, comment, metastore_id, name, workspace_id
createTable catalog_name, columns, data_source_format, metastore_id, name, schema_name, storage_location, table_type, view_definition, workspace_id
deleteRecipient metastore_id, name, workspace_id
deleteSchema full_name_arg, metastore_id, workspace_id
deleteShare metastore_id, name, workspace_id
deleteTable full_name_arg, metastore_id, workspace_id
deltaSharingGetTableMetadata metastore_id, name, recipient_name, schema, share, user_agent, workspace_id
deltaSharingListAllTables metastore_id, options, recipient_name, share, user_agent, workspace_id
deltaSharingListSchemas metastore_id, options, recipient_name, share, user_agent, workspace_id
deltaSharingListShares metastore_id, options, recipient_name, user_agent, workspace_id
deltaSharingListTables metastore_id, options, recipient_name, schema, share, user_agent, workspace_id
deltaSharingQueriedTable metastore_id, recipient_name
deltaSharingQueryTable limitHint, metastore_id, name, recipient_name, schema, share, user_agent, workspace_id
generateTemporaryPathCredential credential_id, credential_type, ensure_url_exists, metastore_id, operation, url, workspace_id
generateTemporaryTableCredential credential_id, credential_type, is_permissions_enforcing_client, metastore_id, operation, table_full_name, table_id, workspace_id
getActivationUrlInfo metastore_id, recipient_name, workspace_id
getCatalog metastore_id, name_arg, workspace_id
getDataAccessConfiguration id, metastore_id, workspace_id
getExternalLocation metastore_id, name_arg, workspace_id
getMetastore id, metastore_id, workspace_id
getMetastoreSummary metastore_id, workspace_id
getPermissions metastore_id, principal, securable_full_name, securable_type, workspace_id
getRecipient metastore_id, name, workspace_id
getRecipientSharePermissions metastore_id, name, workspace_id
getSchema full_name_arg, metastore_id, workspace_id
getShare include_shared_data, metastore_id, name, workspace_id
getSharePermissions metastore_id, name, workspace_id
getStorageCredential metastore_id, name_arg, workspace_id
getTable full_name_arg, metastore_id, workspace_id
listCatalogs metastore_id, workspace_id
listDataAccessConfigurations metastore_id, workspace_id
listExternalLocations credential_name, metastore_id, url, workspace_id
listMetastores workspace_id
listRecipients metastore_id, workspace_id
listSchemas catalog_name, metastore_id, workspace_id
listShares metastore_id, workspace_id
listStorageCredentials metastore_id, workspace_id
listTableSummaries catalog_name, metastore_id, schema_name_pattern, table_name_pattern, workspace_id
listTables catalog_name, metastore_id, schema_name, workspace_id
metadataAndPermissionsSnapshot metastore_id, securables, workspace_id
metadataSnapshot metastore_id, securables, workspace_id
privilegedGetAllPermissions metastore_id, securables, workspace_id
privilegedGetTable full_name_arg, metastore_id, workspace_id
retrieveRecipientToken metastore_id, recipient_name, workspace_id
updateMetastore default_data_access_config_id, delta_sharing_enabled, delta_sharing_recipient_token_lifetime_in_seconds, id, metastore_id, name, owner, storage_root_credential_id, workspace_id
updateMetastoreAssignment default_catalog_name, metastore_id, workspace_id
updatePermissions changes, metastore_id, securable_full_name, securable_type, workspace_id
updateSchema full_name_arg, metastore_id, owner, workspace_id
updateShare metastore_id, name, updates, workspace_id
updateSharePermissions changes, metastore_id, name, workspace_id
updateTables columns, data_source_format, full_name_arg, metastore_id, storage_location, table_type, workspace_id
workspace changeWorkspaceAcl aclPermissionSet, resourceId, shardName, targetUserId
fileCreate path
fileDelete path
purgeClusterLogs logFilePath
purgeRevisionHistoryBefore property, propertyValue, treestoreId
purgeWorkspaceNodes treestoreId
workspaceConfEdit (perubahan pengaturan tingkat ruang kerja) workspaceConfKeys (misalnya, log audit verbose menggunakan nilai enableVerboseAuditLogs), workspaceConfValues (misalnya, untuk log audit verbose ini adalah true atau false)
workspaceExport notebookFullPath, workspaceExportDirectDownload, workspaceExportFormat

Sampel output log

Sampel JSON berikut adalah contoh output log Azure Databricks:

{
    "TenantId": "<your-tenant-id>",
    "SourceSystem": "|Databricks|",
    "TimeGenerated": "2019-05-01T00:18:58Z",
    "ResourceId": "/SUBSCRIPTIONS/SUBSCRIPTION_ID/RESOURCEGROUPS/RESOURCE_GROUP/PROVIDERS/MICROSOFT.DATABRICKS/WORKSPACES/PAID-VNET-ADB-PORTAL",
    "OperationName": "Microsoft.Databricks/jobs/create",
    "OperationVersion": "1.0.0",
    "Category": "jobs",
    "Identity": {
        "email": "mail@contoso.com",
        "subjectName": null
    },
    "SourceIPAddress": "131.0.0.0",
    "LogId": "201b6d83-396a-4f3c-9dee-65c971ddeb2b",
    "ServiceName": "jobs",
    "UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.108 Safari/537.36",
    "SessionId": "webapp-cons-webapp-01exaj6u94682b1an89u7g166c",
    "ActionName": "create",
    "RequestId": "ServiceMain-206b2474f0620002",
    "Response": {
        "statusCode": 200,
        "result": "{\"job_id\":1}"
    },
    "RequestParams": {
        "name": "Untitled",
        "new_cluster": "{\"node_type_id\":\"Standard_DS3_v2\",\"spark_version\":\"5.2.x-scala2.11\",\"num_workers\":8,\"spark_conf\":{\"spark.databricks.delta.preview.enabled\":\"true\"},\"cluster_creator\":\"JOB_LAUNCHER\",\"spark_env_vars\":{\"PYSPARK_PYTHON\":\"/databricks/python3/bin/python3\"},\"enable_elastic_disk\":true}"
    },
    "Type": "DatabricksJobs"
}

Log diagnostik Analisis

Jika Anda memilih opsi Kirim ke Analitik Log saat mengaktifkan pengelogan diagnostik, data diagnostik dari kontainer Anda biasanya diteruskan ke log Azure Monitor dalam waktu 15 menit.

Sebelum Anda melihat log Anda, verifikasi apakah ruang kerja Log Analytics Anda telah ditingkatkan untuk menggunakan bahasa kueri Kusto yang baru. Untuk memeriksa, buka portal Azure dan pilih Analitik Log di paling kiri. Pilih ruang kerja Analitik Log Anda. Jika Anda mendapatkan pesan untuk ditingkatkan, lihat Meningkatkan ruang kerja Azure Log Analytics Anda ke pencarian log baru.

Untuk melihat data diagnostik Anda di log Azure Monitor, buka halaman Pencarian Log dari menu kiri atau area Manajemen halaman. Kemudian masukkan kueri Anda ke dalam kotak pencarian Log.

Analitik Log Azure

Kueri

Berikut adalah beberapa kueri tambahan yang dapat Anda masukkan ke dalam kotak pencarian Log. Kueri ini ditulis dalam bahasa kueri Kusto.

  • Untuk mengkueri semua pengguna yang telah mengakses ruang kerja Azure Databricks dan lokasinya:

    DatabricksAccounts
    | where ActionName contains "login"
    | extend d=parse_json(Identity)
    | project UserEmail=d.email, SourceIPAddress
    
  • Untuk memeriksa versi Spark yang digunakan:

    DatabricksClusters
    | where ActionName == "create"
    | extend d=parse_json(RequestParams)
    | extend SparkVersion= d.spark_version
    | summarize Count=count() by tostring(SparkVersion)