com.atlassian.confluence.content.render.xhtml.migration.exceptions.UnknownMacroMigrationException: The macro 'next_previous_link3' is unknown.

Cartridge Agent

Cartridge Agent is a component that resides within a cartridge instance and handles the communication between the cartridge and Private PaaS. Cartridge Agent communicates with Message Broker to publish its state and manage the cartridge lifecycle. Furthermore, it talks to Complex Event Processor (CEP) to send health statistics of the cartridge. Cartridge Agent is generic and can be used in any  cartridge. A Cartridge Agent comprises of the following components as illustrated in the following diagram: Instance Notifier Event Receiver, Health Statistics Publisher, Artifact Deployment Synchronizer and Instance Status Event Publisher. For more information on what Cartridge Agent does and the protocols it uses to communicate with components, see Cartridge Agent Lifecycle.

The Instance Notifier Event Receiver will subscribe to the Graceful Shutdown and DepSync events that are published to the Instance Notifier topic in Message Broker. Thereby, the Instance Notifier Event Receiver will assist in the Graceful Shutdown and Deployment Synchronization process. The use of the other components in Cartridge Agent have been explained as follows in the key functionalities that are handled by Cartridge Agent:

  • Application health monitoring
    Health Statistic Publisher will publish the health statistics of the application  to the real time processing engine, namely Complex Event Processor (CEP). The health statistics of the application will include the  current state of the application ports 
    (e.g., active and inactive).
     
  • Artifact deployment synchronization
    Artifact Deployment Synchronizer will synchronize the cartridge Git repository with the remote Git repository. 
     
  • Cartridge heath publishing
    Health Statistic Publisher will publish the health statistics of the cartridge, which include the memory consumption and load average, to the real time processing engine, namely Complex Event Processor (CEP).

  • Updating instance status
    The Instance Status Event Publisher will publish events (e.g., member started, member activated etc.) in each boot up instance to the Instance Status topic in Message Broker, which will indicate the current status of the cartridge. As Cloud Controller has subscribed to Message Broker, Cloud Controller will receive these events. Thereafter, Cloud Controller will update the cartridge status (e.g., member started) in the Topology, which is within Message Broker.

     
  • Gracefully shutdown
    W
    hen Auto-scaler decides to scale down, it will publish the Graceful Shutdown event to the Instance Notifier topic, which is in Message Broker. After the Instance Notifier Event Receiver receives the Graceful Shutdown event, the cartridge instance will gracefully shut down its applications and the Instance Status Event Publisher will notify Message Broker that it is ready to shut down. The following diagram explains the latter mentioned message flow in detail:

In addition, Cartridge Agent has some extension points: Instance Started Extension, Start Servers Extension, Artifacts Updated Extension, Instance Activated Extension and Clean Extension. Cartridge developers can use these extension points to extend the cartridges in Private PaaS. For example, the Instance Started Extension can be used to customize the cartridge at the point an instance has started. 

com.atlassian.confluence.content.render.xhtml.migration.exceptions.UnknownMacroMigrationException: The macro 'next_previous_links2' is unknown.