Overview
A Publisher facilitates the creation of historical outputs from records collected by devices. Each Publisher instance manages its own index marker for device records collected so it doesn't republish or skip records.. Following any filter rules, the Publisher operates on batches of records controlled by the index marker that are then processed by the desired output type.
Each publisher runs in a queue, meaning that only one publisher is running at any given time. Enabled publishers will alternate turns so that each has the chance to publish some records before the next round.
Creating A Publisher
A Publisher can be created using any one of several methods. See Creating Objects.
Configuration
General Tab
This tab is common to all objects in ACM. See General Configuration.
Publisher Tab
Output Type
The object assigned that defines the format to be used to publish. Click the button to select or create the output type. Output types are listed below.
Publish Objects
- Publish all objects (Default) if you want to publish everything.
- Publish Filtered objects to only publish objects as defined in the selected Publish Filter object.
Tip
To restrict what is published, Select Publish Filtered objects for the Publish Objects property. Then select a Publish Filter and select the Object Type To Publish.
Object Type To Publish
*This is only enabled if "Publish Filtered Objects" is selected.
- Meters (Default) When selected the filter will apply to meter object and meter name as defined in ACM.
- Devices When selected the filter will apply to device object and device name.
Publish Filter
*This is only enabled if "Publish Filtered Objects" is selected.
The object assigned that defines the filtering to be applied. Click the button to select or create the Filter. See Publish Filters.
Oldest Record
Default = 0. The age (in days) of the oldest record that should be published by this publisher. A value of 0 means no limit.
Continue on Error
Default = Not selected. If selected, the Publisher will continue publishing if a data-related error occurs. The exception is file access and invalid SQL commands - the publisher will cease publishing if it encounters these errors.
Note
This option is beneficial so that ACM can continue publishing in the event a single meter or device fails.
Warning
If Continue on Error is checked, gaps in published data can result.
Batch Size (Default = 5000). The maximum number of archive and meter records the publisher will attempt to query from the internal database for each publish operation.
Note
The Batch Size is not the total number of records to be returned. There are three sets of records that will be returned on one retrieval that may impact the total record count: archive, meters and liquid products.
- When querying the database, the publisher gets all archive records in collection timestamp order. When attempting to retrieve the set of records, the publisher may not get the number of records requested if:
- That many does not exist, or
- The next sequential set of records contains devices/meters not in your collection. For instance if you query 5,000 records and your position is at 10,000, it will try to get records between 10,001 - 15,001. If 1,000 of those records are of meters NOT in your filter, you will only get back 4,000 archive records.
- It is also important to note that though the batch size is used for obtaining new meter records (similar to the logic in the archive), each archive record needs to have a meter record to publish. This means a meter record may need to be included in the query that is outside the normal batch size/sequence collection in the return, so that an archive record can be published. This will could also alter the total number of meter records being published.
- Finally, if the device has any liquid product records those will also need to be collected and include in the retrieval of the data. Batch Size does not apply in this scenario, so the number of records return is based on the number of products assigned to the number of distinct meters in the first archive record set.
Query Timeout (Default = 30) Time (in seconds) for database query to time out while loading records to publish.
Note
Frequent timeouts usually indicate that more data is being requested than the database can process in that amount of time. The query timeout may be increased, but smaller batch sizes run more quickly, more frequently and tend to yield overall faster publisher time.
Logging Tab
Query Details
Select this option to have the publisher log additional details about the publisher's progress through the database. It will show what range of records it's processing or whether it is caught up.