Back-end Maintenance Tasks documentation for the dotCMS Content Management System

NEED INFO: Exporter Tool?

In addition to maintaining your dotCMS server itself, you must also maintain your dotCMS instance using tasks which you can perform in the dotCMS back-end administrative interface.

If you are a dotCMS Cloud customer, server maintenance tasks are performed by dotCMS staff. However, it is your responsibility to perform maintenance tasks in the back-end administrative interface, as outlined in this document.

Vanity URLs Tool

One common use of Vanity URLs is handle 404s - redirecting from old URLs to new ones when you remove pages, change page or folder names, or when you move pages to different folders.

  • Over time, you may end up moving or renaming the same page multiple times, so you may end up with Vanity URLs that redirect to other Vanity URLs.
    • This doesn't cause any problems, but it does slow down loading of pages if the request goes through multiple Vanity URLs.
  • You should periodically review Vanity URLs to ensure that the page or path that each redirects to (the Forward To field) still exists.
    • If it doesn't, you should find what the new path is, and change the Vanity URL to redirect directly to the new path, to prevent multiple redirects.

Publishing Queue Tool

Status/History Tab

This queue should periodically be cleared of:

  • All failed bundles
  • Bundles more than a week or so old
  • Any bundles over about 80 bundles in the queue

Bundles Tab

Old bundles (if any) should periodically be cleared from this list.

  • Having any Bundles in this tab does not affect dotCMS performance in any way.
  • However, bundles can get large, and all bundles take up disk space, so any that are unused should be removed.

Time Machine Tool

When you choose to view Past sites in the Time Machine, each time listed in the drop-down represents a Time Machine Snapshot of your site at that time.

  • There is no limit to the number of snapshots you can keep, and having many snapshots does not cause any issues.
    • But each snapshot takes up space on the disk.
  • So, if you don't have need of older snapshots, you should delete them.

Site Search Tool

In general, old versions of Site Search indices are not saved; any time you run a Site Search indexing job to a named index, the old index with the same name is overwritten.

  • If, however, you have any Site Search indexes that you don't use, these can be removed.
    • Having them does not cause any issues, but each index takes up both memory and disk space.

Note: If you have a Scheduled Job to create an index which you don't use, you'll need to remove both:

  • The index itself (in the Indices tab).
  • The Scheduled Job (in the View All Jobs tab), and
    • If you don't remove this, the unnecessary index will be recreated the next time the job runs.

Incremental Indexes

!!!!! ADD - Incremental indexes should periodically be overwritten with full indexes. The more incremental indexes you have, the slower searches against the site search index will be.

The easiest way to ensure your incremental indexes do not end up causing memory and performance hits is to schedule a periodic full reindex. For example, you may perform incremental indexes once a day (or even more frequently, if you have highly dynamic content), and then schedule another job once a week to perform a full reindex.

Plugins Tool

Any plugins added to your system by dotCMS Cloud personnel should not be changed. However, if you have any custom plugins, you must fully maintain them yourself.

So, if you have any custom plugins, you should periodically reivew the Plugins tab to:

  • Ensure any custom plugins are running.
  • Remove any custom plugins you no longer need.

Users Tool

All customers, including dotCMS Cloud customers, maintain full responsibility for creating and maintaining user accounts.

  • For security purposes, you should periodically review your user accounts to:
    • Disable (un-check the “Active” checkbox) any user accounts which are no longer used.
    • Limit users with the “CMS Admin” role to only those users that need full, unrestricted access to the dotCMS back-end UI (the concept of least privilege).

Important Notes:

  • It is recommend that, if possible you do not DELETE user accounts.
    • Deleting the account removes the history of that user account's actions in the system from all locations other than the (past) access log file.
    • This may make it difficult or impossible to investigate past behavior of that user account, and may present problems for certain types of audits.
  • If you are a dotCMS Cloud customer, accounts used by dotCMS Support must be maintained and remain active.
    • Failure to allow access by dotCMS Support personnel may degrade the SLA for dotCMS to respond to product (not infrastructure) issues.

Sites Tool

All Sites which are not Stopped will be accessible in some way - either directly (via a domain which matches the Site name or any of the Site aliases) or indirectly (using dotCMS REST API calls). All Sites are also accessible in the dotCMS back-end UI, anywhere Sites and folders can be selected.

  • Any Sites which are not being used or which you want to ensure are not accessible from the front-end should be Stopped.
  • Any Sites which you do not want to be accessible by non-admin users should have the Permissions set to remove access for all users (CMS Admin users will still always have access).
  • While you can delete Sites which you are sure are not being used, we recommend that you use caution when deleting any Site.
    • It's possible that some running Sites may reference content or objects in Sites which do not appear to be used.
    • Therefore, it's strongly recommend that you first Stop a site, and then thoroughly test your remaining Sites, before removing the Stopped Site.

Roles & Tools Tool

Once you have your Roles and Permissions set and working, there is usually not a need to make regular changes to Roles and Tools.

However, if you do periodically make changes to permissions, then for security purposes it's recommended that you occasionally review Roles & Tools, and remove:

  • Tool Groups and Tools which users in a given Role do not need.
  • Users which no longer need access to Roles.
  • Permissions the Role no longer needs.

Configuration Tool

UNKNOWN: What is the REGENERATE KEY button in the Configuration-Basic Config tab for - is there a maintenance task associated with this?

Publishing Environments Tab

If you're a dotCMS Cloud customer, your publishing environments will rarely change, unless you upgrade your environments to add or remove nodes (for example, to scale up a cluster). However, in some cases you may add test environments or set up parallel servers for various purposes, such as blue-green deployment of major site changes.

You should peridiocally review the Publishing Environments tab to:

  • Ensure that all publishing environments, and each server in each publishing environment
  • Perform an Integrity Check on each environment, to ensure that there are no conflicts between the Push Publishing sender and receiver that might interfere with content pushes.

Network Tab

!!!!!Add

Maintenance Tool

Cache Tab

Flush Cache

Flush All Caches

Cache Tuning

If you're a dotCMS Cloud customer, dotCMS may periodically perform tuning of your caches to improve performance or optimize memory usage for your instance. If you maintain your own on-premesis or local version of dotCMS, you should periodically tune your own cache.

For more information, please see the Cache Tuning documentation.

Index Tab

Proper operation of your dotCMS system depends on up-to-date Elasticsearch indexes, which you can maintain in this tab. It is strongly recommended that you periodically perform the following operations:

  1. Remove all but the 1-3 most recent unused indexes.
    • Older indexes are not needed, and may cause performance issues when creating a new index or performing other operations within dotCMS.
    • Delete both the live_ and working_ versions of old indexes which are not marked as Active (and highlighted in green).
    • It is recommended that you always leave at least 1 unused (non-Active) index.
  2. Perform a Full Reindex
    • Set the Reindex field to Rebuild Whole Index.
    • Press the REINDEX button.
    • Wait for the indexing operation to complete.

Note: It is recommended that you delete old unused indexes before performing a new full reindex.

!!!!!Index health must be green. If it's not, you will see problems. !!!!!If index is not green, reindex is necessary. If reindexing produces an index which does not show in green, please submit a ticket to dotCMS Support to help resolve the issue.

Tools Tab

The Tools tab contains tools which can be used to perform specialized maintenance tasks. In some circumstances, dotCMS Support may use these tools, or ask you to use them, but during normal operation, you won't need to use them.

There are just a few tools which you may choose to use:

Drop Old Assets Versions

dotCMS maintains every version of every content item on your site. This means that, over time, you will end up with old versions of content which are no longer used, and sometimes these unused versions may end up taking a significant amount of space.

You can manually remove old unused versions of content using the Drop Old Assets Versions task in the Tools tab. This is completely optional, but can help free up disk space, and reduce the number of versions your content editors see when viewing the History tab in the content editing screen.

Clean Assets

!!!!! ADD

Delete Pushed Assets History

????? ADD?

Shutdown dotCMS

Administrative users can shut down the dotCMS instance from the Tools tab. Since this tab is only available to admin users, this capability is also only available to admin users.

If you're a dotCMS Cloud customer, automated tools will detect that your dotCMS instance is no longer running, and your dotCMS instance will be automatically restarted.

IMPORTANT: If you are a dotCMS Cloud customer, PLEASE NOTIFY US before shutting down your system, especially outside of normal support hours. Even though your system will automatically restart, dotCMS on-call Support engineers will be paged (and possibly woken up) when your system stops.