Skip to main content

azure_extras

Additional Azure cloud computing services by Microsoft.

Provider Summary

total services: 44
total resources: 443

See also:
[SHOW] [DESCRIBE] [REGISTRY]


Installation

To pull the latest version of the azure_extras provider, run the following command:

REGISTRY PULL azure_extras;

To view previous provider versions or to pull a specific provider version, see here.

Authentication

StackQL uses Azure application credentials obtained using the az login command from the Azure SDK. For more information, see here.

Authenticating using an Azure Service Principal

To authenticate using an Azure Service Principal, set the following environment variables: AZURE_TENANT_ID, AZURE_CLIENT_ID and AZURE_CLIENT_SECRET, see creating-an-azure-service-principal.

Example Queries

Try the following queries using stackql shell, or run them from a script or CI pipeline with stackql exec.

IoT Central applications

IoT Central applications in the subscription with subdomain, SKU, template and state:

SELECT name, display_name, subdomain, state, location,
json_extract(sku, '$.name') AS sku, template, application_id
FROM azure_extras.iot_central.apps
WHERE subscription_id = '{{ subscription_id }}'
ORDER BY location, name;

Azure Spring Apps instances

Spring Apps service instances with tier, power state, version, zone redundancy and outbound network type:

SELECT name, location, service_id, version, power_state, zone_redundant, fqdn,
json_extract(sku, '$.name') AS sku,
json_extract(sku, '$.tier') AS tier,
json_extract(network_profile, '$.outboundType') AS outbound_type,
provisioning_state
FROM azure_extras.app_platform.services
WHERE subscription_id = '{{ subscription_id }}';

Lab Services labs

Labs with their lab plan, state, VM size, usage quota and auto-shutdown settings:

SELECT name, title, state, location, lab_plan_id,
json_extract(virtual_machine_profile, '$.sku.name') AS vm_sku,
json_extract(virtual_machine_profile, '$.osType') AS os_type,
json_extract(virtual_machine_profile, '$.usageQuota') AS usage_quota,
json_extract(auto_shutdown_profile, '$.shutdownOnDisconnect') AS shutdown_on_disconnect,
json_extract(auto_shutdown_profile, '$.shutdownOnIdle') AS shutdown_on_idle,
provisioning_state
FROM azure_extras.lab_services.labs
WHERE subscription_id = '{{ subscription_id }}';

Health Data Services workspaces

Health Data Services workspaces with their public network access setting and private endpoint count:

SELECT name, location, public_network_access,
json_array_length(private_endpoint_connections) AS private_endpoints,
provisioning_state
FROM azure_extras.health_data_services.workspaces
WHERE subscription_id = '{{ subscription_id }}';

FHIR services in a workspace

FHIR services in one workspace with the FHIR version, the authentication authority and audience, and whether the SMART on FHIR proxy is enabled:

SELECT name, kind, location, public_network_access, event_state,
json_extract(authentication_configuration, '$.authority') AS authority,
json_extract(authentication_configuration, '$.audience') AS audience,
json_extract(authentication_configuration, '$.smartProxyEnabled') AS smart_proxy_enabled,
provisioning_state
FROM azure_extras.health_data_services.fhir_services
WHERE workspace_name = '{{ workspace_name }}'
AND resource_group_name = '{{ resource_group_name }}'
AND subscription_id = '{{ subscription_id }}';

Spring Apps deployments

Every deployment across the apps in one Spring Apps instance with its active flag, status, instance count and resource requests:

SELECT id, name, active, status,
json_extract(sku, '$.capacity') AS instance_count,
json_extract(source, '$.type') AS source_type,
json_extract(deployment_settings, '$.resourceRequests.cpu') AS cpu,
json_extract(deployment_settings, '$.resourceRequests.memory') AS memory,
provisioning_state
FROM azure_extras.app_platform.deployments
WHERE service_name = '{{ service_name }}'
AND resource_group_name = '{{ resource_group_name }}'
AND subscription_id = '{{ subscription_id }}';

IoT Central application provisioning

Create an application on the ST2 SKU with a globally unique subdomain, then delete it:

INSERT INTO azure_extras.iot_central.apps (
resource_name, resource_group_name, subscription_id, location, sku, properties, tags
)
SELECT 'fleet-telemetry-01', '{{ resource_group_name }}', '{{ subscription_id }}', 'eastus',
'{"name": "ST2"}',
'{"displayName": "Fleet telemetry", "subdomain": "fleet-telemetry-01"}',
'{"environment": "dev"}';

DELETE FROM azure_extras.iot_central.apps
WHERE resource_name = 'fleet-telemetry-01'
AND resource_group_name = '{{ resource_group_name }}'
AND subscription_id = '{{ subscription_id }}';

Services