## Classes
TX2
## Typedefs
Metric : Object
Counter : object

Expose a metric of type: Counter.

## TX2 **Kind**: global class * [TX2](#TX2) * [.action(action_name, [opts], fn)](#TX2.action) * [.event(name, data)](#TX2.event) * [.issue(err)](#TX2.issue) * [.metric(name, [function])](#TX2.metric) ⇒ [Metric](#Metric) * [.counter(name)](#TX2.counter) ⇒ [Counter](#Counter) ### TX2.action(action_name, [opts], fn) Expose an action/function triggerable via PM2 or PM2.io **Kind**: static method of [TX2](#TX2) | Param | Type | Description | | --- | --- | --- | | action_name | string | Name of the action | | [opts] | object | Optional parameter | | fn | function | Function to be called | **Example** *(Action without arguments)* ```js tx2.action('run_query', (cb) => { cb({ success: true }) }) ``` **Example** *(Action with arguments)* ```js tx2.action('run_query', arg1, (cb) => { cb({ success: arg1 }) }) ``` ### TX2.event(name, data) Sends an Event **Kind**: static method of [TX2](#TX2) | Param | Type | Description | | --- | --- | --- | | name | string | Name of the event | | data | object | Metadata attached to the event | **Example** ```js tx2.event('event-name', { multi: 'data' }) ``` ### TX2.issue(err) Sends an Issue **Kind**: static method of [TX2](#TX2) | Param | Type | Description | | --- | --- | --- | | err | string \| Error | Error object or string to notify | **Example** ```js tx2.issue(new Error('bad error') ``` ### TX2.metric(name, [function]) ⇒ [Metric](#Metric) Expose a Metric **Kind**: static method of [TX2](#TX2) **Returns**: [Metric](#Metric) - A metrics object | Param | Type | Description | | --- | --- | --- | | name | string | Name of the metric | | [function] | function | Optional function to trigger every second to retrieve updated value | **Example** ```js tx2.metric('metric_name', () => obj.value) ``` **Example** ```js tx2.metric('metric_name', 'unit', () => obj.value) ``` **Example** ```js let mn = tx2.metric('metric_name') mn.set(20) ``` ### TX2.counter(name) ⇒ [Counter](#Counter) Expose a Metric of type: Counter. By calling .inc() or .dec() you update that value **Kind**: static method of [TX2](#TX2) | Param | Type | Description | | --- | --- | --- | | name | string | Name of the Metric | ## Metric : Object **Kind**: global typedef **Properties** | Name | Type | Description | | --- | --- | --- | | val | function | Return the current value | | set | function | Set value | ## Counter : object Expose a metric of type: Counter. **Kind**: global typedef **Properties** | Name | Type | Description | | --- | --- | --- | | inc | function | Increment value | | dev | function | Decrement value |