hyperledger-json-parsor
v1.0.9
Published
A wrapper/ adapter node.js script, which accepts a single parameter name and returns it’s value (single/ multiple), by consuming the underlying /metrics API output in real time and allows developers to create the necessary and well aligned simple API to f
Downloads
4
Readme
hyperledger-json-parsor
Fast, lightweight, Hyperledger JSON data parser developed by Xoriant Solutions Pvt. Ltd..
A wrapper/ adapter node.js script, which accepts a single parameter name and returns it’s value (single/ multiple), by consuming the underlying /metrics API output in real time and allows developers to create the necessary and well aligned simple API to feed all widgets.
Features
- Extensible – The solution can be extended to work for any other platforms which readily provide Prometheus-aligned multi-valued metrics values but the front-end requires a single parameter to be fetched.
- Data Parsing at Server Side – No need to write any client side code to parse data.
- Easy to configure – One time configurations through config files for host server details.
Installation
$ npm install hyperledger-json-parsor
var hyperJsonParser = require('hyperledger-json-parsor');
let inputData = {
apiURL: 'YOUR_HOST_URL',
parameter: 'PARAMETER_ID',
recordType: 'multiple'
}
let data = hyperJsonParser.getRemoteData(inputData);
data.then(function (result) {
//do your stuff
}, function (err) {
//error block
})
inputData
The inputData
argument allows you to customize the request with the following properties:
- apiURL: to define the GET API URL from which response is coming.
- parameter: to set specific key/parameter id to get values.
- recordType: to define single or multiple values required in response. Possible values are
single, multiple
.
Raw Data
# HELP endorser_propsal_duration The time to complete a proposal.
# TYPE endorser_propsal_duration histogram
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="0.005"} 0
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="0.01"} 0
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="0.025"} 0
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="0.05"} 1
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="0.1"} 1
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="0.25"} 1
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="0.5"} 1
endorser_propsal_duration_bucket{chaincode="cscc:",channel="",success="true",le="1"} 1
Sample Input
let inputData = {
apiURL: 'YOUR_HOST_URL',
parameter: 'endorser_propsal_duration_bucket',
recordType: 'single'
}
Sample Output
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "0",
"label": "cscc:,channel"
}
Sample Input
let inputData = {
apiURL: 'YOUR_HOST_URL',
parameter: 'endorser_propsal_duration_bucket',
recordType: 'multiple'
}
Sample Output
[
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "0",
"label": "cscc:,channel"
},
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "0",
"label": "cscc:,channel"
},
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "0",
"label": "cscc:,channel"
},
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "1",
"label": "cscc:,channel"
},
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "1",
"label": "cscc:,channel"
},
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "1",
"label": "cscc:,channel"
},
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "1",
"label": "cscc:,channel"
},
{
"id": "endorser_propsal_duration_bucket",
"name": "endorser_propsal_duration_bucket",
"value": "1",
"label": "cscc:,channel"
}
]