Study guide
8.4 Environment Troubleshooting, Web Console & Developer Console
Adobe Certified Professional - AEM Sites Developer AD0-E128
Track your progress as you read
Finished sections get a check mark.
1 Chapter 1: Dispatcher Farm & Multi-Site Configuration
1.1 AEM Dispatcher Configuration & Caching Fundamentals 1.2 Multi-Site Management (MSM) & Blueprint/Live Copy Architecture 1.3 OSGi Configuration Management & Run Modes (.cfg.json)
2 Chapter 2: Oak Indexing & Custom Logging
2.1 Custom Oak Index Definitions & Lucene Query Optimization 2.2 AEM Custom Logging, Logback Configurations & Request Tracing
3 Chapter 3: Component Architecture, HTL & Client Libraries
3.1 Core Components & Proxy Component Pattern 3.2 HTL (HTML Template Language) Block Statements & Context-Aware Escaping 3.3 Client-Side Libraries (Clientlibs) Architecture & Management
4 Chapter 4: Sling Models & OSGi Declarative Services
4.1 Sling Models Framework, Injectors & Model Exporter 4.2 OSGi Declarative Services, Component Lifecycle & Service Rankings
5 Chapter 5: Templates, Fragments & Business Workflows
5.1 Editable Templates, Structure, Initial Content & Content Policies 5.2 Content Fragments, Experience Fragments & Headless Delivery 5.3 AEM Workflows, Custom Process Steps & Launchers
6 Chapter 6: Build, Packaging & Cloud Manager CI/CD
6.1 Maven Project Structure & AEM Project Archetype 6.2 Content Package Types, Packaging Rules & FileVault Validation 6.3 Cloud Manager CI/CD Pipelines & Quality Gates 6.4 Rapid Development Environments (RDE) & Sling Repoinit Scripts
7 Chapter 7: Environment Maintenance & Content Distribution
7.1 AEM Maintenance Releases & Cloud Service Version Updates 7.2 AEM Deployment Topologies & Cloud Architecture 7.3 Replication Agents & Sling Content Distribution 7.4 Repository Maintenance: Revision Cleanup, Compaction & Purge Tasks
8 Chapter 8: Analyzing, Debugging & Diagnostic Tools
8.1 System Log Analysis & Diagnostic Tooling 8.2 Debugging Client-Side Libraries & Granite Dumplibs 8.3 Dispatcher Caching Diagnostics, X-Cache-Info & Local Validation 8.4 Environment Troubleshooting, Web Console & Developer Console
8.4 Environment Troubleshooting, Web Console & Developer Console
Key Takeaways Explain This Topic AI
Use the Sling Servlet Resolver on the local SDK or the Servlets view in the Cloud Service Developer Console to diagnose URL-to-handler resolution.
The local and AEM 6.5 Felix Web Console exposes bundle, component, configuration, and servlet diagnostics; Cloud Service production uses a read-only Developer Console instead.
The current Developer Console shows environment-tier status and searchable views for bundles, packages, configurations, servlets, services, and OSGi components; it no longer exposes individual pod status.
Status Dumps and Queries can export bundle, package, configuration, service, component, Sling Job, and Oak definition state and open query-performance tooling.
Cloud Service thread dumps are collected by Adobe but are not currently self-service; request them from AEM Support with the exact incident time window.
Last updated: September 2026
8.4 Environment Troubleshooting, Web Console & Developer Console
Core Principle: Choose the diagnostic surface that matches both the symptom and the hosting model. The local SDK and AEM 6.5 expose the Felix Web Console. AEM as a Cloud Service stage and production environments use the read-only Developer Console and Repository Browser; they do not provide unrestricted Web Console access.
Sling Servlet and Script Resolution
Sling resolves a request from the resource path, resource type, selectors, extension, suffix, and HTTP method. A path servlet can also match an explicitly registered servlet path.
On a local SDK or an AEM 6.5 instance, use /system/console/servletresolver . Enter the request path and method to see the selected servlet or script and competing candidates. This is the right first tool for:
- a servlet that returns 404 or 405;
- an unexpected script winning over a custom servlet;
- selector or extension mismatches;
a resource type or supertype that resolves to the wrong renderer.
In the AEM as a Cloud Service Developer Console, use the Servlets view. It accepts a path with selectors and extension plus GET or POST and returns handlers in resolution order. If another servlet has a more specific registration or higher ranking, the result makes that visible.
Felix Web Console for Local SDK and AEM 6.5
The Web Console at /system/console is a mutable administrative tool and is appropriate only where the environment permits it.
Bundles
The Bundles view shows Installed, Resolved, and Active states. An Installed bundle often has an unresolved Import-Package requirement. Inspect its imports and version ranges, then confirm that an active bundle exports the required package. Do not try to solve an OSGi wiring failure by rebuilding indexes or clearing Dispatcher cache.
OSGi Components and Services
The Components view shows whether a Declarative Services component is active, satisfied, or unsatisfied. An unsatisfied mandatory reference means no matching service is available, the target filter excludes the available service, or the provider is itself inactive. A delayed component can be satisfied but not yet active until its service is requested.
Configuration Manager
Configuration Manager shows effective Configuration Admin values. In Cloud Service, configuration is immutable at runtime and source-controlled; use the Developer Console Configurations view to verify what was deployed rather than attempting a production edit.
AEM as a Cloud Service Developer Console
Open the Developer Console from the environment menu in Cloud Manager. It is read-only and requires the appropriate Cloud Manager and AEM product-profile permissions.
The current console provides:
OSGi Bundles and Java Packages: Search deployed bundles, imports, exports, and package versions.
Configurations: Inspect active configuration properties and environment-variable substitutions.
Servlets: Test GET or POST resolution and compare registered handlers.
Services and OSGi Components: Inspect providers, consumers, component state, and unsatisfied references.
Repository Browser: Open a read-only view of repository content for an authorized tier.
Status Dumps / Queries: Download text or JSON state for bundles, packages, configurations, services, components, Sling Jobs, and Oak definitions; open query-performance tooling.
The console reports the health of an environment tier. Adobe explicitly notes that the current console does not expose individual pod status . Do not base a troubleshooting procedure on selecting a named pod or taking a per-pod snapshot from the console.
Oak Query Diagnosis
A traversal warning or slow repository query belongs in query tooling, not in the bundle console. Use Query Performance to inspect popular and slow queries and run Explain on the exact statement. A useful plan names an appropriate index and estimated cost. A traversal plan indicates that no suitable index covers the path, node type, and property restrictions.
For custom indexes on AEM as a Cloud Service, deploy a supported custom index definition through the application and increment its version when the definition changes. Do not toggle reindex flags manually in production or assume the raw Oak-definition dump displays every merged index detail.
Thread Dumps and High CPU
On a local or self-managed AEM system, thread dumps can be captured with JVM tools or local Web Console facilities. AEM as a Cloud Service is different: Adobe collects thread dumps continuously, but current documentation says customers cannot download them in a self-service manner. For a Cloud Service CPU, deadlock, or stuck-thread incident:
Record the exact start and end time, environment, tier, request paths, and observed impact.
Preserve relevant aemrequest, aemerror, and Dispatcher logs for the same window.
Open an AEM Support case and request the thread dumps for that time window.
Correlate repeated runnable or blocked stacks with request latency and recent code or index changes.
Diagnostic Routing Matrix
- Symptom Correct first diagnostic surface
- Wrong servlet, script, 404, or 405 Servlet Resolver locally; Developer Console Servlets view in Cloud Service
- Bundle Installed or unresolved Bundles and Java Packages
- DS component Unsatisfied OSGi Components and referenced service details
- Wrong effective OSGi value Configuration Manager locally; Developer Console Configurations in Cloud Service
- Slow or traversal query Query Performance and Explain
- Sling jobs backing up Status Dumps / Queries, Sling Jobs
- Cloud Service high CPU requiring stacks Logs plus AEM Support request for the exact thread-dump window
The reliable exam pattern is symptom to tool: resolution issues go to servlet diagnostics, wiring issues to bundles/packages, activation issues to components/services, and query issues to Explain or Query Performance.