Oracle assets app
The Oracle assets app crawls Oracle databases, schemas, tables, views, and columns
and publishes them to Atlan. Build it with the OracleCrawler builder, which
mirrors the "new app" wizard: Credential → Connection → Metadata.
Creating an app creates a new connection
Each create mints a new connection and new assets. To re-crawl, re-run the existing workflow (see Re-run an existing app).
Basic authentication
- Python
Oracle crawling with basic auth
from pyatlan.client.atlan import AtlanClient
from pyatlan.model.apps import OracleCrawler
client = AtlanClient()
response = (
OracleCrawler(client)
.basic( # (1)
username="atlan_user", # (2)
password="••••••", # (3)
sid="ORCL", # (4)
database_name="ORCL", # (5)
host="oracle.example.com", # (6)
)
.connection( # (7)
name="production-oracle",
admin_roles=[client.role_cache.get_id_for_name("$admin")],
)
.include_metadata({"ORCL": ["HR", "SALES"]}) # (8)
.run(name="oracle-prod") # (9)
)
print(response.slug, response.run_id)
- Step 1—Credential. Username/password auth; the secret is vaulted.
- Required. Username.
- Required. Password.
- Required. The Oracle SID or service name.
- Required. The default database name.
- Required. The Oracle host. The port (
port=) is optional and defaults to1521. - Step 2—Connection. Display name + at least one admin.
- Step 3—Metadata. Schemas to crawl, as
{database: [schema, ...]}. .run(name=...)creates and submits a run.
For TLS/wallet connections, also pass the optional protocol="TCPS",
oracle_wallet=..., and wallet_password=... arguments.
Configuration options
All metadata options are optional:
- Python
Oracle metadata configuration
(
OracleCrawler(client)
.basic(username="atlan_user", password="••••••", sid="ORCL", database_name="ORCL", host="...")
.connection(name="production-oracle", admin_roles=[...])
.include_metadata({"ORCL": ["HR"]}) # (1)
.exclude_metadata({"ORCL": ["TEMP"]}) # (2)
.exclude_regex_for_tables_views(".*_TMP$") # (3)
.advanced_config("default") # (4)
.run(name="oracle-prod")
)
- Databases/schemas to include, as
{database: [schema, ...]}. - Databases/schemas to exclude—exclude takes precedence over include.
- Regex of tables/views to ignore.
- Controls experimental crawler features.