SlideShare a Scribd company logo
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
ADOBE
CUSTOMER
BROWN
BAG
SERIES
Andrew Khoury & Sham Hassan Chikkegowda
Customer Support Engineers, Adobe
For the best listening experience, we recommend using a
headset
TODAY’S TOPIC: AEM Monitoring and Maintenance
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What’s Covered
1. Best practices for maintaining AEM instances.
2. Tips and tricks for proactive things to monitor.
3. Tips and tricks for reducing downtime when instances are corrupted.
4. Common pitfalls to avoid.
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Topics covered
 Replication
DataStore Garbage Collection
Tar PM Optimization
Workflow



© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 4
Optimizing replication
Replication Tuning and
Monitoring
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Monitoring Replication
• Replication can be monitored using JMX
• Each agent exposes an object
• The objects expose:
- If the agent is enabled
- If the queue is blocked, paused or invalid
- The number of entries in the queue
- Timing information
5
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Configure a replication.log
6
Why?
• Keeps error.log from getting bloated
• Isolates replication errors and warnings
How?
• Add an Apache Sling Logging Logger:
- Log File: logs/replication.log
- Log Level: Info
- Logger: com.day.cq.replication
• Add an Apache Sling Logging Writer (for log rotation)
- Log File: logs/replication.log
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 7
Replication monitoring via
JMX And Log ConfigurationDEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Replication: Initializing and Queuing
8
User activates
/content/geometrixx-outdoors/en/support
Durbo
package
/var/replication/data
Content is packaged
OSGi
event
is fired
Replication
AgentManager
handles the event
Sling Job Handler
queues/stores the job
slingevent:Job
/var/eventing/jobs
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Replication: Processing Jobs
9
Sling
Job Handler
Process the job through the
correct TransportHandler
ERROR: Queue stuck
slingevent:Job
node
/var/eventing/jobs
Read job from queue
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Replication: Troubleshooting
The queue can get stuck if:
• The Job Handler fails.
• Error while sending the data.
- Failure to create Durbo package from /var/replication/data
- Issue in class loading, network malfunction, etc.
• The receiving end fails to respond.
- Publish instance is experiencing high traffic or is unstable.
• The receiving end fails to import / receive the
replication during transport. For example:
- Failure to read the durbo package
- Failure to save/import the content
10
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
Optimizations:
• Enable “File Storage” of replication durbo packages:
- Go to http://host:port/system/console/configMgr and login as admin
- Find “Adobe Granite Replication Content Factory” and click Edit
- Check the “replication.content.useFileStorage.name” checkbox and Save
• Set the connection timeout and socket timeout in the agent Extended
configuration to avoid socketConnect and socketRead hang situations.
- socketConnect can be 30 seconds = 30000
- socketRead timeout can be 10 minutes = 600000
11
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
12
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
Optimizations:
• In the “Triggers” tab of the replication agent:
- “No Status Update” - if you do not need a status to track that the replication happened.
- “No Versioning” - if you do not need versions of the pages or assets generated on
activations.
13
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
14
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 15
Reducing disk space usage
DataStore Garbage Collection
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What is the DataStore?
The DataStore (default implementation):
• Stores binary JCR properties > 4KB (default).
• Only allows files to be added.
• Stores files under crx-quickstart/repository/repository/datastore.
• Files are referenced by the JCR internal node record (persistence manager
bundles).
16
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How does the DataStore work?
1. A unique id is generated from contents of the file.
2. The id is used for the filename.
3. The datastore directory structure is built like this:
• datastore/{1st 2 chars id}/{2nd 2 chars id}/{3rd 2 chars id}/{id}
• E.g.
datastore/a2/b9/86/a2b98676377b947244bb954769def9b4fd625daa
4. Due to this, files are stored uniquely so the same file will only be stored
once.
17
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
DataStore Example
User uploads the same image to two different locations
18
AEM.png
Upload
Upload
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
a2b98676377b947244bb954769def9b4fd625daa
repository/repository/datastore
86
b9
a2
DataStore Example
19
JCR Node:
/content/dam/AEM.png/renditions/original/jcr:content/data property
JCR Node:
/content/dam/geometrixx-
media/AEM.png/renditions/original/jcr:content/data property
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How does DataStore GC work?
DataStore GC (Garbage Collection) is the only way to delete DataStore files.
How does it work?
• “Scan” Phase
- Read all nodes in the JCR
- Update the timestamp of each of the referenced datastore files.
• “Delete” Phase
- Find all files with timestamp older than when it started the scan phase and deletes
them.
20
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
DataStore GC: Avoiding common Pitfalls
Before running DataStore GC, make sure:
• You have a backup of the datastore directory
• No issues with setting timestamps (this especially applies of your datastore is
on a network storage).
• Date and time is in sync between network storage and CQ server
• CQ5.3 or 5.4 with CRX2.2 - at least hotfix 2.2.0.70.
• CQ5.6.1 - do *NOT* use stopDataStoreGarbageCollection in JMX to stop the
GC process.
21
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 22
How to run DataStore GCDEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
DataStore GC
This error means you are missing a file from your datastore:
“DataStoreException: Record not found”
If you see that error then do not run datastore gc until you have restored the missing files.
To identify all missing files:
• Go to /crx/explorer/index.jsp and login as admin (/crx/index.jsp CQ5.4 and earlier).
• Browse to "Repository Configuration" => "Check Repository”.
• Check the "Data store consistency check" box.
• Click “Run”
• This will output a list of nodes referencing the missing files along with the path of the missing file.
• Since the files are unique, you can copy the missing files over from any other AEM (CQ) instances that
the same file.
See this article for more details:
• http://helpx.adobe.com/crx/kb/DataStoreGarbageCollection.html
23
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 24
How to run DataStore
Consistency Check
DEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 25
Tar Persistence Manager
Optimization
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Part 2: Topics Covered
TarPM Optimization
- What is the TarPM & TarPM optimization?
- Best practices for maintaining AEM Instances
- Tips and tricks for proactive things to monitor
- Tips and tricks for reducing downtime & Speed up the process
Workflow Monitoring
- Supported Features
- Best practices for maintaining AEM Instances.
- Tips and tricks for proactive things to monitor
26
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What is TarPM?
27
data_00000.tar
<cq_home>/crx-quickstart/repository/workspaces/crx.defau
data_00001.tar
Bundle 01
Bundle 02
Bundle 03
Bundle 04
• CRX Stores nodes and properties as one entity (bundle) in data tar file using Tar
Persistance Manager (Tar PM).
• Tar PM model is append only.
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What is TarPM Optimization?
• Tar Optimization is a process which cleans up the old unreferenced data
to improve the overall performance & reduce disk usage.
28
bundle03
bundle04
bundle11
bundle14
data_00003.tar
TAR
OPTIMIZATIO
N
bundle01
bundle02
bundle03
bundle04
data_00001.tar
bundle11
bundle12
bundle13
bundle14
data_00002.tar
Unuse
d data
Deletes old
data tar file.
Deletes old
data tar file.
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Data Tar file location.
• Default storage location of data tar files are
29
<cq_home>/crx-quickstart/repository
data_00000.tar
data_00001.tar
workspaces
crx.default
version
data_00004.tar
data_00005.tar
data_00010.tar
data_00011.tar
tarJournal
data_00012.tar
data_00013.tar
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Regularly run tar optimization during the low usage hours of your
system.
• Automatic Schedule:-
- By default CRX automatically runs Tar PM optimization in midnight
between 2 AM to 5 AM.
- To reconfigure a scheduled optimization add a param autoOptimizeAt to
PersistenceManager element at repository.xml and workspace.xml.
• <PersistenceManager
class="com.day.crx.persistence.tar.TarPersistenceManager">
<param name="autoOptimizeAt" value="01:00-04:00" />
</PersistenceManager>
30
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Manually execute TarPM optimization from JMX console
31
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Manually by creating an optimization file “optimize.tar” in the desired workspace folder.
32
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Tips and tricks for proactive things to monitor
• From JMX console monitor
- TarOptimizationRunningSince:- The
timestamp when the current Tar PM
optimization was started, or 0 if currently not
running.
- TarOptimizationWork:- The remaining
optimization work in KiloBytes.
- TarOptimizationRate:- TarPM optimization
rate in KB/sec.
33
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 34
How to monitor Tar
Optimization via JMX client
DEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Tips and tricks for reducing downtime & Speed up the process
• Configure the TarOptimizationDelay property:- Number of milliseconds to sleep after
optimizing one transaction.
• Load the index files into the buffer cache every few minutes, from both the crx.default
and the version directory.
- cat <cq_home>/crx-quickstart/repository/workspaces/crx.default/index*.tar > /dev/null”
- cat <cq_home>/crx-quickstart/repository/version/index*.tar > /dev/null”
• To enable Index in memory option refer
http://dev.day.com/docs/en/crx/current/administering/persistence_managers.html#Configuring the indexInMemory
Property
35
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Common Pitfalls to Avoid
• Scheduling tar optimization to run during the heavy usage hours of your
system.
• If you are optimizing tar files in a cluster, you need to ensure that the
Tar optimization time are set to the same value on all cluster nodes.
• Do not run tar optimization while you are backing up instance.
• Do not run tar optimization when datastore garbage collection is
running.
• Don’t ignore the message “File not found” exception when tar
optimization is running. Please contact daycare.
36
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37
Workflow maintenance and Purge Obsolete
Workflow Data
Workflow Monitoring
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Workflow Purge
• Workflows enable you to automate Experience Manager activities.
• Workflows events generate archived data.
• This data can quickly grow over time as workflows are processed.
• Purging this data on a regular schedule improves system performance.
• In AEM(CQ) 5.6 the Workflow JMX MBean support has been added in
order to maintain workflow system.
38
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Regularly run workflow purge to
avoid the problems associated with
a large volume of data.
• Using user interface through Felix
console
• Using CURL
• Creating a JMX client that uses
Workflow Mbean
http://helpx.adobe.com/cq/kb/
workflow-monitor-via-jmx.html
39
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Tips and tricks for proactive things to monitor
40
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 41
How to monitor workflow
via JMX client
DEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

More Related Content

PPTX
AEM (CQ) Dispatcher Caching Webinar 2013
Andrew Khoury
 
PDF
Aem dispatcher – tips & tricks
Ashokkumar T A
 
PDF
CIRCUIT 2015 - Monitoring AEM
ICF CIRCUIT
 
PPTX
AEM (CQ) Dispatcher Security and CDN+Browser Caching
Andrew Khoury
 
PDF
Scaling AEM (CQ5) Gem Session
Michael Marth
 
PPTX
Introdcution to Adobe CQ
Rest West
 
PPTX
New Repository in AEM 6 by Michael Marth
AEM HUB
 
PDF
Adobe AEM Maintenance - Customer Care Office Hours
Andrew Khoury
 
AEM (CQ) Dispatcher Caching Webinar 2013
Andrew Khoury
 
Aem dispatcher – tips & tricks
Ashokkumar T A
 
CIRCUIT 2015 - Monitoring AEM
ICF CIRCUIT
 
AEM (CQ) Dispatcher Security and CDN+Browser Caching
Andrew Khoury
 
Scaling AEM (CQ5) Gem Session
Michael Marth
 
Introdcution to Adobe CQ
Rest West
 
New Repository in AEM 6 by Michael Marth
AEM HUB
 
Adobe AEM Maintenance - Customer Care Office Hours
Andrew Khoury
 

What's hot (20)

PPTX
The new repository in AEM 6
Jukka Zitting
 
PPTX
EVOLVE'13 | Enhance | Permission Sensitive Caching | Paul McMahon & Jason Rap...
Evolve The Adobe Digital Marketing Community
 
PDF
Aem offline content
Ashokkumar T A
 
PDF
S903 palla
Andrew Khoury
 
PDF
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
François Le Droff
 
PDF
Configuring CQ Security
connectwebex
 
PPTX
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
MongoDB
 
PDF
AEM - A Collection of developer friendly tools
Ashokkumar T A
 
PPTX
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management Systems
MongoDB
 
PDF
AEM GEMS Session SAML authentication in AEM
AdobeMarketingCloud
 
PPTX
Accelerate your ColdFusion Applications using Caching
ColdFusionConference
 
PDF
Aem maintenance
Ashokkumar T A
 
PDF
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
ColdFusionConference
 
PDF
Developing High Performance and Scalable ColdFusion Application Using Terraco...
ColdFusionConference
 
PPT
Roy foubister (hosting high traffic sites on a tight budget)
WordCamp Cape Town
 
PPTX
Best Practices for WordPress in Enterprise
Taylor Lovett
 
PPTX
Aem hub oak 0.2 full
Michael Marth
 
PDF
Presentation on Instant page speed optimization
Sanjeev Kumar Jaiswal
 
PDF
EasyEngine - Command-Line tool to manage WordPress Sites on Nginx
rtCamp
 
PDF
How to scale PHP applications
Enrico Zimuel
 
The new repository in AEM 6
Jukka Zitting
 
EVOLVE'13 | Enhance | Permission Sensitive Caching | Paul McMahon & Jason Rap...
Evolve The Adobe Digital Marketing Community
 
Aem offline content
Ashokkumar T A
 
S903 palla
Andrew Khoury
 
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
François Le Droff
 
Configuring CQ Security
connectwebex
 
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
MongoDB
 
AEM - A Collection of developer friendly tools
Ashokkumar T A
 
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management Systems
MongoDB
 
AEM GEMS Session SAML authentication in AEM
AdobeMarketingCloud
 
Accelerate your ColdFusion Applications using Caching
ColdFusionConference
 
Aem maintenance
Ashokkumar T A
 
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
ColdFusionConference
 
Developing High Performance and Scalable ColdFusion Application Using Terraco...
ColdFusionConference
 
Roy foubister (hosting high traffic sites on a tight budget)
WordCamp Cape Town
 
Best Practices for WordPress in Enterprise
Taylor Lovett
 
Aem hub oak 0.2 full
Michael Marth
 
Presentation on Instant page speed optimization
Sanjeev Kumar Jaiswal
 
EasyEngine - Command-Line tool to manage WordPress Sites on Nginx
rtCamp
 
How to scale PHP applications
Enrico Zimuel
 
Ad

Viewers also liked (9)

PDF
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Craig Randall
 
PPTX
Adobe Managed Services: Complicated Cloud Deployments
Adam Pazik
 
PDF
Leveraging Data To Master Customer Experience - Patrick Tripp, Adobe
DigiMarCon - Digital Marketing, Media and Advertising Conferences & Exhibitions
 
PPTX
AEM MSM: Basics & More
Kanika Gera
 
PDF
HBase and Hadoop at Adobe
Cosmin Lehene
 
PDF
The Right Ingredients for Building an Effective Customer Profile
Demandbase
 
PDF
The six key steps to AEM architecture
Ashokkumar T A
 
PPTX
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...
AEM HUB
 
PDF
AEM Best Practices for Component Development
Gabriel Walt
 
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Craig Randall
 
Adobe Managed Services: Complicated Cloud Deployments
Adam Pazik
 
Leveraging Data To Master Customer Experience - Patrick Tripp, Adobe
DigiMarCon - Digital Marketing, Media and Advertising Conferences & Exhibitions
 
AEM MSM: Basics & More
Kanika Gera
 
HBase and Hadoop at Adobe
Cosmin Lehene
 
The Right Ingredients for Building an Effective Customer Profile
Demandbase
 
The six key steps to AEM architecture
Ashokkumar T A
 
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...
AEM HUB
 
AEM Best Practices for Component Development
Gabriel Walt
 
Ad

Similar to CQ5.x Maintenance Webinar 2013 (11)

PDF
Efficient content structures and queries in CRX/CQ
connectwebex
 
PPTX
AEM - Key Learning from Escalations
Kanika Gera
 
PPTX
Accelerate your ColdFusion Applications using Caching
Pavan Kumar
 
PPTX
Evolve18 | Ameeth Palla | Optimizing Your Assets Implementation
Evolve The Adobe Digital Marketing Community
 
PPTX
ColdFusion ORM - Advanced : Adobe Max 2009
Rupesh Kumar
 
PDF
Adm07 The Health Check Extravaganza for IBM Social and Collaboration Environm...
Kim Greene
 
PPTX
IMMERSE'16 Intro to Adobe Experience Manager & Adobe Marketing Cloud
AdobeMarketingCloud
 
PPTX
Aem asset optimizations & best practices
Kanika Gera
 
PDF
SoftLayer Object Storage Overview
Michael Fork
 
PPT
Ibmtsm 100325083335-phpapp01
Andrew Adam
 
PPT
Ibmtsm 100325083335-phpapp01
Rajesh Kumar
 
Efficient content structures and queries in CRX/CQ
connectwebex
 
AEM - Key Learning from Escalations
Kanika Gera
 
Accelerate your ColdFusion Applications using Caching
Pavan Kumar
 
Evolve18 | Ameeth Palla | Optimizing Your Assets Implementation
Evolve The Adobe Digital Marketing Community
 
ColdFusion ORM - Advanced : Adobe Max 2009
Rupesh Kumar
 
Adm07 The Health Check Extravaganza for IBM Social and Collaboration Environm...
Kim Greene
 
IMMERSE'16 Intro to Adobe Experience Manager & Adobe Marketing Cloud
AdobeMarketingCloud
 
Aem asset optimizations & best practices
Kanika Gera
 
SoftLayer Object Storage Overview
Michael Fork
 
Ibmtsm 100325083335-phpapp01
Andrew Adam
 
Ibmtsm 100325083335-phpapp01
Rajesh Kumar
 

Recently uploaded (20)

PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
Software Development Methodologies in 2025
KodekX
 
PDF
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
Software Development Methodologies in 2025
KodekX
 
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 

CQ5.x Maintenance Webinar 2013

  • 1. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. ADOBE CUSTOMER BROWN BAG SERIES Andrew Khoury & Sham Hassan Chikkegowda Customer Support Engineers, Adobe For the best listening experience, we recommend using a headset TODAY’S TOPIC: AEM Monitoring and Maintenance
  • 2. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What’s Covered 1. Best practices for maintaining AEM instances. 2. Tips and tricks for proactive things to monitor. 3. Tips and tricks for reducing downtime when instances are corrupted. 4. Common pitfalls to avoid.
  • 3. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Topics covered  Replication DataStore Garbage Collection Tar PM Optimization Workflow   
  • 4. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 4 Optimizing replication Replication Tuning and Monitoring
  • 5. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Monitoring Replication • Replication can be monitored using JMX • Each agent exposes an object • The objects expose: - If the agent is enabled - If the queue is blocked, paused or invalid - The number of entries in the queue - Timing information 5
  • 6. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Configure a replication.log 6 Why? • Keeps error.log from getting bloated • Isolates replication errors and warnings How? • Add an Apache Sling Logging Logger: - Log File: logs/replication.log - Log Level: Info - Logger: com.day.cq.replication • Add an Apache Sling Logging Writer (for log rotation) - Log File: logs/replication.log
  • 7. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 7 Replication monitoring via JMX And Log ConfigurationDEMONSTRATION
  • 8. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Replication: Initializing and Queuing 8 User activates /content/geometrixx-outdoors/en/support Durbo package /var/replication/data Content is packaged OSGi event is fired Replication AgentManager handles the event Sling Job Handler queues/stores the job slingevent:Job /var/eventing/jobs
  • 9. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Replication: Processing Jobs 9 Sling Job Handler Process the job through the correct TransportHandler ERROR: Queue stuck slingevent:Job node /var/eventing/jobs Read job from queue
  • 10. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Replication: Troubleshooting The queue can get stuck if: • The Job Handler fails. • Error while sending the data. - Failure to create Durbo package from /var/replication/data - Issue in class loading, network malfunction, etc. • The receiving end fails to respond. - Publish instance is experiencing high traffic or is unstable. • The receiving end fails to import / receive the replication during transport. For example: - Failure to read the durbo package - Failure to save/import the content 10
  • 11. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication Optimizations: • Enable “File Storage” of replication durbo packages: - Go to http://host:port/system/console/configMgr and login as admin - Find “Adobe Granite Replication Content Factory” and click Edit - Check the “replication.content.useFileStorage.name” checkbox and Save • Set the connection timeout and socket timeout in the agent Extended configuration to avoid socketConnect and socketRead hang situations. - socketConnect can be 30 seconds = 30000 - socketRead timeout can be 10 minutes = 600000 11
  • 12. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication 12
  • 13. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication Optimizations: • In the “Triggers” tab of the replication agent: - “No Status Update” - if you do not need a status to track that the replication happened. - “No Versioning” - if you do not need versions of the pages or assets generated on activations. 13
  • 14. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication 14
  • 15. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 15 Reducing disk space usage DataStore Garbage Collection
  • 16. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What is the DataStore? The DataStore (default implementation): • Stores binary JCR properties > 4KB (default). • Only allows files to be added. • Stores files under crx-quickstart/repository/repository/datastore. • Files are referenced by the JCR internal node record (persistence manager bundles). 16
  • 17. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. How does the DataStore work? 1. A unique id is generated from contents of the file. 2. The id is used for the filename. 3. The datastore directory structure is built like this: • datastore/{1st 2 chars id}/{2nd 2 chars id}/{3rd 2 chars id}/{id} • E.g. datastore/a2/b9/86/a2b98676377b947244bb954769def9b4fd625daa 4. Due to this, files are stored uniquely so the same file will only be stored once. 17
  • 18. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. DataStore Example User uploads the same image to two different locations 18 AEM.png Upload Upload
  • 19. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. a2b98676377b947244bb954769def9b4fd625daa repository/repository/datastore 86 b9 a2 DataStore Example 19 JCR Node: /content/dam/AEM.png/renditions/original/jcr:content/data property JCR Node: /content/dam/geometrixx- media/AEM.png/renditions/original/jcr:content/data property
  • 20. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. How does DataStore GC work? DataStore GC (Garbage Collection) is the only way to delete DataStore files. How does it work? • “Scan” Phase - Read all nodes in the JCR - Update the timestamp of each of the referenced datastore files. • “Delete” Phase - Find all files with timestamp older than when it started the scan phase and deletes them. 20
  • 21. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. DataStore GC: Avoiding common Pitfalls Before running DataStore GC, make sure: • You have a backup of the datastore directory • No issues with setting timestamps (this especially applies of your datastore is on a network storage). • Date and time is in sync between network storage and CQ server • CQ5.3 or 5.4 with CRX2.2 - at least hotfix 2.2.0.70. • CQ5.6.1 - do *NOT* use stopDataStoreGarbageCollection in JMX to stop the GC process. 21
  • 22. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 22 How to run DataStore GCDEMONSTRATION
  • 23. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. DataStore GC This error means you are missing a file from your datastore: “DataStoreException: Record not found” If you see that error then do not run datastore gc until you have restored the missing files. To identify all missing files: • Go to /crx/explorer/index.jsp and login as admin (/crx/index.jsp CQ5.4 and earlier). • Browse to "Repository Configuration" => "Check Repository”. • Check the "Data store consistency check" box. • Click “Run” • This will output a list of nodes referencing the missing files along with the path of the missing file. • Since the files are unique, you can copy the missing files over from any other AEM (CQ) instances that the same file. See this article for more details: • http://helpx.adobe.com/crx/kb/DataStoreGarbageCollection.html 23
  • 24. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 24 How to run DataStore Consistency Check DEMONSTRATION
  • 25. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 25 Tar Persistence Manager Optimization
  • 26. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Part 2: Topics Covered TarPM Optimization - What is the TarPM & TarPM optimization? - Best practices for maintaining AEM Instances - Tips and tricks for proactive things to monitor - Tips and tricks for reducing downtime & Speed up the process Workflow Monitoring - Supported Features - Best practices for maintaining AEM Instances. - Tips and tricks for proactive things to monitor 26
  • 27. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What is TarPM? 27 data_00000.tar <cq_home>/crx-quickstart/repository/workspaces/crx.defau data_00001.tar Bundle 01 Bundle 02 Bundle 03 Bundle 04 • CRX Stores nodes and properties as one entity (bundle) in data tar file using Tar Persistance Manager (Tar PM). • Tar PM model is append only.
  • 28. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What is TarPM Optimization? • Tar Optimization is a process which cleans up the old unreferenced data to improve the overall performance & reduce disk usage. 28 bundle03 bundle04 bundle11 bundle14 data_00003.tar TAR OPTIMIZATIO N bundle01 bundle02 bundle03 bundle04 data_00001.tar bundle11 bundle12 bundle13 bundle14 data_00002.tar Unuse d data Deletes old data tar file. Deletes old data tar file.
  • 29. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Data Tar file location. • Default storage location of data tar files are 29 <cq_home>/crx-quickstart/repository data_00000.tar data_00001.tar workspaces crx.default version data_00004.tar data_00005.tar data_00010.tar data_00011.tar tarJournal data_00012.tar data_00013.tar
  • 30. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Regularly run tar optimization during the low usage hours of your system. • Automatic Schedule:- - By default CRX automatically runs Tar PM optimization in midnight between 2 AM to 5 AM. - To reconfigure a scheduled optimization add a param autoOptimizeAt to PersistenceManager element at repository.xml and workspace.xml. • <PersistenceManager class="com.day.crx.persistence.tar.TarPersistenceManager"> <param name="autoOptimizeAt" value="01:00-04:00" /> </PersistenceManager> 30
  • 31. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Manually execute TarPM optimization from JMX console 31
  • 32. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Manually by creating an optimization file “optimize.tar” in the desired workspace folder. 32
  • 33. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Tips and tricks for proactive things to monitor • From JMX console monitor - TarOptimizationRunningSince:- The timestamp when the current Tar PM optimization was started, or 0 if currently not running. - TarOptimizationWork:- The remaining optimization work in KiloBytes. - TarOptimizationRate:- TarPM optimization rate in KB/sec. 33
  • 34. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 34 How to monitor Tar Optimization via JMX client DEMONSTRATION
  • 35. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Tips and tricks for reducing downtime & Speed up the process • Configure the TarOptimizationDelay property:- Number of milliseconds to sleep after optimizing one transaction. • Load the index files into the buffer cache every few minutes, from both the crx.default and the version directory. - cat <cq_home>/crx-quickstart/repository/workspaces/crx.default/index*.tar > /dev/null” - cat <cq_home>/crx-quickstart/repository/version/index*.tar > /dev/null” • To enable Index in memory option refer http://dev.day.com/docs/en/crx/current/administering/persistence_managers.html#Configuring the indexInMemory Property 35
  • 36. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Common Pitfalls to Avoid • Scheduling tar optimization to run during the heavy usage hours of your system. • If you are optimizing tar files in a cluster, you need to ensure that the Tar optimization time are set to the same value on all cluster nodes. • Do not run tar optimization while you are backing up instance. • Do not run tar optimization when datastore garbage collection is running. • Don’t ignore the message “File not found” exception when tar optimization is running. Please contact daycare. 36
  • 37. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37 Workflow maintenance and Purge Obsolete Workflow Data Workflow Monitoring
  • 38. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Workflow Purge • Workflows enable you to automate Experience Manager activities. • Workflows events generate archived data. • This data can quickly grow over time as workflows are processed. • Purging this data on a regular schedule improves system performance. • In AEM(CQ) 5.6 the Workflow JMX MBean support has been added in order to maintain workflow system. 38
  • 39. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Regularly run workflow purge to avoid the problems associated with a large volume of data. • Using user interface through Felix console • Using CURL • Creating a JMX client that uses Workflow Mbean http://helpx.adobe.com/cq/kb/ workflow-monitor-via-jmx.html 39
  • 40. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Tips and tricks for proactive things to monitor 40
  • 41. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 41 How to monitor workflow via JMX client DEMONSTRATION
  • 42. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.