25.01.2015 Views

Managing Ensemble Productions - InterSystems Documentation

Managing Ensemble Productions - InterSystems Documentation

Managing Ensemble Productions - InterSystems Documentation

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

What to Manage<br />

For example, an item could be in a Read timeout or some other busy state that lasts longer than the Update timeout.<br />

Another example is a configuration item the scheduler starts cannot be stopped by the scheduler if the item is in the<br />

middle of a synchronous call. The configuration item must wait for a response to the call before the scheduler stops<br />

it. See the “Working with Messages” section.<br />

• The other is if the scheduler itself is prevented from waking up at the intended time. Examples of conditions that could<br />

cause this: the CPU is busy, a queue builds up of the alarm clock messages for the scheduler, the scheduler is itself<br />

disabled or crashed, the production is down, etc. The scheduler is not guaranteed to wake up during any particular<br />

interval, and when it does wake up it only looks at the intended state for the current moment, not at any history of when<br />

it should have woken up.<br />

Use of the schedule setting is not intended or designed as an event signaling device. It is intended to accommodate planned<br />

outages and scheduled intervals of activity or inactivity. If you have events that you must trigger at a particular time or as<br />

soon as possible thereafter, <strong>Ensemble</strong> offers better alternatives:<br />

• You can configure your business service to use an inbound adapter with the implemented OnTask() method where<br />

you call the business service. <strong>Ensemble</strong> provides classes for many types of inbound adapters. See the Ens.InboundAdapter<br />

entry in the Class Reference and the books in the <strong>Ensemble</strong> Adapter Guides set for details.<br />

• If you do not want to use an adapter, you can call the business service programmatically and schedule it to run using<br />

the [Home] > [Task Manager] page (/csp/sys/op/UtilSysTaskHome.csp) in the Management Portal. This gives you finer<br />

control in situations such as the system being down at 1:00 a.m.<br />

The recommended approach is to configure the business service with Pool Size = 0 and then use the Task Manager to<br />

launch a task that calls CreateBusinessService on it and invokes ProcessInput() on the resulting service instance<br />

object. The advantage of calling a business service this way is that you call it at the time you want and it runs only<br />

once. If <strong>Ensemble</strong> happens to be down at that time, your task can register an error. See the following sections for<br />

details:<br />

– “Using the Task Manager” section of the “<strong>Managing</strong> Caché” chapter of the Caché System Administration Guide<br />

– “Invoking a Business Service Directly” section of the “Business Services” chapter of Developing <strong>Ensemble</strong><br />

<strong>Productions</strong><br />

3.3.5 Assigning Configuration Items to Categories<br />

The [<strong>Ensemble</strong>] > [<strong>Productions</strong>] > [Configuration] page offers a Category field for each configuration item. This is an optional<br />

text label that you can use to visually group configuration items within the production diagram.<br />

Once you have provided Category values for configuration items, when you are viewing the production configuration diagram<br />

you can right-click on the background of the diagram. Choose Show Category and a category name from the context menu.<br />

The diagram changes to reveal only those configuration items that match the Category name you have just selected. The<br />

diagram displays the Category name at the top left of the diagram, below the production name.<br />

Alternatively, when you choose Show Category, select All (the first option) to reveal all configuration items, regardless of<br />

category.<br />

Each category name is case-sensitive, and it may contain spaces. You may assign a configuration item to more than one<br />

category by providing a comma-separated list of category values in the Category field. Do not use leading or trailing spaces<br />

around these commas, as these are interpreted as characters within the label and can prevent what would otherwise be a<br />

proper match. Use:<br />

TEST,My Test Category,MINE<br />

Not:<br />

TEST, My Test Category , MINE<br />

28 <strong>Managing</strong> <strong>Ensemble</strong> <strong>Productions</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!