Showing posts with label AEM 6.3. Show all posts
Showing posts with label AEM 6.3. Show all posts

AEM6.3 how to find the Binaries location on file system


Statement : Identify the Binary Location on file system

Environment : AEM 6.3

Solution :

2.       And Navigate to this path in crxde search : /content/dam/projects/we-retail/cover/jcr:content/metadata


3.     Check the value of dam:sha1 and that shows the binary location on file system Dam:sha1 =a81372af7d4d9ab856cad6e293ea48e653f0e278
4.     Whereas first letter a813 indicates datastore location  on the file system where - \crx-quickstart\repository\datastore\0a\81\13  and you can observe the asset located under with file type .file : 0a81135558804df12feb78bd994c0f4416aad830
5.       Now change the file extension to jpg i.e 0a81135558804df12feb78bd994c0f4416aad830.jpg
6.       Open in the Phot viewer or Photoshop.
7.       Post seeing the image and revert the image back to the original file extension i.e remove the .jpg extension.

set the Oak Login token session expiration

Statement : Apache jackrabbit oak TokenConfiguration

Environment : AEM 6.3

Solution :

- Go to System/console/configmgr
- Search for Apache jackrabbit oak TokenConfiguration
- set the token expiration value to 1 hr or 60000 seconds
- Save the changes. That's it!.



How to set the Oak login token session expiration

Statement : set the Oak Login token expiration

Environment : AEM 6.3

Please follow the below URL :
https://helpx.adobe.com/experience-manager/kb/How-to-set-token-session-expiration-AEM.html

Change AEM Default Session timeout value

Statement - Change the AEM session timeout value

Enthronement : AEM 6.3

Solution :
- Go to Felix console configmgr
- Search for Apache felix jetty based http service
- configure the session timeout property 
- Save the changes

AEM 6.3 Frequently used URLs

Statement - AEM 6.3 Frequently used URLs

Environment :
                       - AEM 6.3
                       -  Port 4502
Assuming AEM server is running on port 4502.

Osgi Console:
  1. Felix console
  2. Felix Bundles
  3. Felix Configmanager
Touch UI console for maintenance & Performance tuning
  1. Touch UI console
Touch UI Diagnosis of AEM Repositry
  1. Index Manager console
  2. Log Monitoring
  3. Query Performance
  4. Request Performance
  5. Heap dump download
  6. Thread dump download
  7. User Sync(replciation ..etc) daignostics
  8. Download OSGI config status
Touch UI Daily maintenance Activities
  1. Version Purge and 
  2. Revision cleanup
  3. Workflow Archive
  4. Workflow failures
Touch UI Weekly Maintenance Activities:
  1. Data store Garbage colelction
  2. Workflow purge
  3. Audit log purge
Touch UI Monitoring of Memory, Disk and Repository Usage
  1. Disk Usage Monitoring(Identify the Repo size & usable Disk space)
  2. Repository Statistics(No of events, No of active Sessions and Queue Length)
  3. Memory Usage statistics(Heap used, No heap used & code cache used)
AEM Touch UI Health Reports:
Touch UI AEM workflow consoles
AEM Touch UI Secuirty console

  1. Users
  2. Groups
  3. Oauth CLients
  4. Permissions

AEM Touch UI  General consoles

  1. CRXDE lite
  2. Search forms
  3. Tagging
  4. configuration Browser
  5. Templates
  6. components
  7. Translation configuration

AEM Touch UI Deployment consoles


  1. Offloading
  2. Packages
  3. package share
  4. Replication
  5. Distribution
  6. Topology
  7. Cloud services

Classic UI CRXDE console:
  1. CRXDE ligh console
  2. Package_Manager console
Classic UI console:
  1. Siteadmin console
  2. Assets console
  3. Inbox console
  4. Campaign console
  5. User console
  6. Tools console
  7. Tagging console
Miscellaneous admin classic console
  1. Author Replication agents
  2. Tree Activation
  3. Reports
  4. Self Service configuration(mail account creation,password reset mail confirmation email id setup)
  5. Segmentation
  6. Task Management
  7. Versioning
  8. Workflow
  9. MSM
  10. Designs
  11. MSM- Blueprints
JMX console:
  1. JMX
  2. Repository Backup/optimization/cluster/index/inconsistencycheck/GC
Web Console :
  1. Memory Usage
  2. System_information
Main Console list:
  1. Token Manager
  2. Crypto_support
  3. Disk_Benchmark
  4. Profiler
  5. Repository_check
  6. Product_Info
AEM status console:
  1. Bundle_list
  2. Logs_Status
  3. Repository Status
  4. Available Script Engines
  5. Sling_Metrics
  6. JSP Taglibs
  7. JAAS-Login Modules
  8. Status_info_collector
  9. Configration_status
Note: Change the Host and Port number based on your server

Continuous Integration tools for AEM

Three commonly used tools that are central to the continuous integration process:
Jenkins: 
§  Used for continuous integration,
§  Version control,
§  Compiling,
§  Testing, and
§  Deployment of your code.
SonarQube:
§   Used for code analysis and
§   To track and measure code quality

Nexus OSS:
§   A free repository manager that allows for the mirroring and storage of Maven dependencies.


§  Refer the below guide for the continuous integration:





How to install AEM author or Publisher server with or without Sample content through command line

Statement - Install AEM author or publisher without sample content

Pre-requisite - 
                     -  JRE 1.8 setup is done
                     -  AEM 5.6.1 Quickstart jar file is downloaded
                     -  Windows 
                   
Solution - 
  1. Make sure JRE 1.8 is installed and verified through command prompt - Java -version
  2. Create a folder author or publisher & copy the downloaded AEM quickstart jar file to this folder
  3. Rename the AEM Jar file aem-author-p4502.jar or aem-publish-p5403.jar
  4. Use the below command for the Author/publish server installation with No sample content
  5. Author instance installation command:
             java -server -XX:MaxPermSize=256m -Xmx1024M -jar aem-author-p4502.jar -r author,                             nosamplecontent
     6. Publish instance installation command:
            java -server -XX:MaxPermSize=256m -Xmx1024M -jar aem-publish-p4503.jar -r publish,                            nosamplecontent

Where 
          -  Author and Publish is out of the box run modes provided by AEM
          -  Cannot use both run modes at the same time for the installation.
          -  Combine author with Samplecontent or Nosamplecontent but not both

          -  Combine publish with Samplecontent or Nosamplecontent but not both
       

How to Reclaim Wasted CRX3 Storage Using Off-line Tar File Compaction


Statement: Offline compaction in AEM 6.1

Environment:
§  JRE 1.7
§  AEM 6.1

Solution:

Due to continuing issues with MVCC revision cleanup, the recommended method to completely and reliably perform revision GC and re-claim storage space is via off-line tar file compaction.  Unfortunately, this requires downtime.  

Offline Compaction solution:

1) Determine disk usage BEFORE with:
du -sh /mnt/aem/author/crx-quickstart/repository/segmentstore
2) Determine the Oak version (/system/console)
3) Make sure you have the compatible version of the oak-run tool, see here(instructions here to build your own from source)
4) Backup AEM
5) Stop AEM
6) Find old checkpoints (assumes your server instance has at least 12 GB of memory - if not, reduce -Xms and -Xmx accordingly)
java -Dtar.memoryMapped=true -Xms8g -Xmx8g -jar oak-run-1.0.12.jar checkpoints /mnt/aem/author/crx-quickstart/repository/segmentstore
7) Find unreferenced checkpoints and delete them
java -Dtar.memoryMapped=true -Xms8g -Xmx8g -jar oak-run-1.0.12.jar checkpoints /mnt/aem/author/crx-quickstart/repository/segmentstore rm-unreferenced
8) Compact the segmentstore
java -Dtar.memoryMapped=true -Xms8g -Xmx8g -jar oak-run-1.0.12.jar compact /mnt/aem/author/crx-quickstart/repository/segmentstore
9) Start AEM
10) Determine disk usage AFTER with:
du -sh /mnt/aem/author/crx-quickstart/repository/segmentstore



Disable WebDav in AEM Production publisher


Statement : How to disable WebDav in AEM publisher(Production)

Environment : AEM 6.1

Solution:

WebDAV should be disabled on the publish environment. This can be done by stopping the appropriate OSGi bundles.
1.     Connect to the Felix Management Console running on:
               http://<host>:<port>/system/console
                For example http://localhost:4503/system/console/bundles.
2.     In the list of bundles, find the bundle named:
§  Apache Sling Simple WebDAV Access to repositories (org.apache.sling.jcr.webdav)
§  Click the stop button (in the Actions column) to stop this bundle.
3.     Again in the list of bundles, find the bundle named:
§  Apache Sling DavEx Access to repositories (org.apache.sling.jcr.davex)
§  Click the stop button to stop this bundle.

Note:

A restart of AEM is not required.

How to prevent DOS misuse/attack in AEM


Solution:

Control the selectors in your application, so that you only serve the explicit selectors needed and return 404 for all others.


Prevent the output of an unlimited number of content nodes.
§  Check the configuration of the default renderers, which can be a problem area.
In particular the JSON renderer which can transverse the tree structure over multiple levels.
For example, the request:  http://localhost:4502/.json
could dump the whole repository in a JSON representation. This would cause significant server problems.
For this reason Sling sets a limit on the number of maximum results.
To limit the depth of the JSON rendering you can set the value for:JSON Max results (json.maximumresults)
in the configuration for the Apache Sling GET Servlet. When this limit is exceeded the rendering will be collapsed. The default value for Sling within CQ is 200.
§  As a preventive measure disable the other default renderers (HTML, plain text, XML). Again by configuring the Apache Sling GET Servlet

CAUTION

Do not disable the JSON renderer, this is required for the normal operation of CQ.

Prevent rapid repository growth caused by Linkchecker in AEM 6.1


Environment : AEM 6.1

Solution :

§    Linkchecker performs a lot of JCR writes/update causing CPU peaks as well as performance decreases, mainly caused by the JCR locks.
§    To verify if the repository growth is related to the linkchecker, enable TRACE log level for org.apache.jackrabbit.oak.jcr.operations.
§    Writes during a few minutes, and check if the majority of the writes are below /var/linkchecker. Then do not forgot to disable the TRACE log level.
§    In such cases where performance is compromised by this linkchecker behavior, it is recommended to disable this feature by following the steps below:
1. Delete /var/linkchecker (it will be recreated automatically)
2. In the OSGI configuration console, open Day CQ Link Checker Info Storage Service and deselect "Save external link references” option and save.
Note:
Please note that, disabling this option will not cause automatic removal of the existing referencedBy property values. To achieve this, first remove /var/linkchecker.


Configure replication and transport users


Statement - why to use separate user for the replication and Transport users.

Solution :

§  The transport user should not be the admin user.
§  The replication user should not be the admin user
§  For Transport user: set up a user on the publish system that has only access rights to the relevant portions of the publish system and use that user's credentials for the transport.
§  For replication user: a user who can only see content that is supposed to be replicated. The replication user is used to collect the content to be replicated on the author system before it is sent to the publisher.