Monitoring, reporting & settings

Reporting & Monitoring

The PCE provides several reporting and monitoring endpoints for tracking risk, detecting core services, and reviewing system events.

Reports

Retrieve and download generated reports:

>>> reports = pce.reports.get()
>>> pce.download_report(report.href)

Risk Summary

Get an overview of vulnerability risk across the environment:

>>> risk = pce.get_risk_summary()

Core Services Detection

Retrieve a summary of detected core services:

>>> summary = pce.get_detected_core_services_summary()

System Events

Query system-wide events. System events use a global endpoint and are not scoped to a specific organization:

>>> events = pce.system_events.get()

Organization Settings

The PCE exposes several settings endpoints for configuring organization-wide behavior, event handling, logging, and traffic collection.

Organization Settings

Read the current organization settings:

>>> settings = pce.org_settings.get()

Event Settings

View and manage event configuration:

>>> event_settings = pce.event_settings.get()

Syslog Destinations

Manage syslog forwarding destinations:

>>> destinations = pce.syslog_destinations.get()

Traffic Collector Settings

View and manage traffic collector configuration:

>>> tc = pce.traffic_collector_settings.get()

Label Mapping

Label mapping rules allow you to automatically assign labels to workloads based on hostname patterns, IP addresses, or other attributes. The illumio library provides full CRUD support for label mapping rules as well as methods for running and monitoring label mapping jobs.

Managing Label Mapping Rules

Create and retrieve label mapping rules:

>>> rules = pce.label_mapping_rules.get()
>>> rule = pce.label_mapping_rules.create(
...     LabelMappingRule(name='My Rule', ...)
... )

Reordering Rules

Label mapping rules are evaluated in order. You can reorder them by specifying a new position:

>>> pce.reorder_label_mapping_rule(rule.href, position=1)

Running Label Mapping

Execute label mapping rules and track job progress:

>>> job = pce.run_label_mapping_rules(data={...})
>>> status = pce.get_label_mapping_job(job_uuid='...')
>>> results = pce.download_label_mapping_results(job_uuid='...')

Note

Label mapping jobs run asynchronously. Use the job UUID returned from run_label_mapping_rules to poll for status and download results once the job completes.

PCE System Information

The illumio library provides access to various PCE system-level endpoints for querying version information, node status, and managing async operations.

Product Version

Retrieve the PCE software version:

>>> version = pce.get_product_version()

Node Availability

Check whether the PCE node is available and ready to serve requests:

>>> available = pce.get_node_available()

Supercluster Leader

In a supercluster deployment, determine which PCE is the current leader:

>>> leader = pce.get_supercluster_leader()

Application Group Risk

Query risk information at the application group level:

>>> risk_summary = pce.get_app_group_risk_summary()
>>> risk_details = pce.get_app_group_risk_details(app_group_id='...')

Traffic Flow Metrics

Retrieve metrics about the traffic flow database:

>>> metrics = pce.get_traffic_flow_db_metrics()

Async Query Management

Manage asynchronous queries that have been submitted to the PCE:

>>> queries = pce.get_async_queries()
>>> pce.delete_async_query(uuid='...')
>>> results = pce.download_async_query(uuid='...')