This project consists of a Node.js script to update a Geckoboard KPI dashboard.
- GECKOBOARD_API_KEY
- BACKOFFICE_USERNAME
- BACKOFFICE_PASSWORD
Fields:
ID | Name | Type | Description |
---|---|---|---|
date | Date | date | The date of the snapshot |
version | Version | string | The Nice2 version |
tickets | Number of support tickets | number | The total number of the support tickets created for this version on that particular date |
tickets_per_installation | Number of support tickets per installation | number | The total number of the support tickets created for this version on that particular date divided by the number of installations running on that particular version |
Fields:
ID | Name | Type | Description |
---|---|---|---|
date | Date | date | The date of the snapshot |
version | Version | string | The Nice2 version |
installations | Number of installations | number | The total number of installations running on that particular version on that particular date |
To add another dataset, add the script in the folder src/datasets
and
export it via the src/datasets/index.js
file.
The dataset script should export the following properties:
id
(e.g. 'support_tickets.by_version')feed
(Optional; Array of dataset ids to pass the data from into the toDatasetRecords function (2nd argument))scheme
(The geckoboard dataset scheme)deleteBy
(The oldest records (by insertion time) get deleted, once a limit of 5000 is reached. This behaviour can be overridden by using this property)query
(Object containing the following properties to query the Backoffice:entity
,paths
,where
,resolve
,fields
)toDatasetRecords
(Function to convert the Backoffice query result into records matching the Geckoboard scheme (1st argument: query result, 2nd argument: required data from other datasets (see `feed)))