...
For example, the swagger description and UI of the services provided by Microservice Bus:
Service: /api/microservices/v1/
Swagger: /api/microservices/v1/swagger.json
![](https://wiki.open-o.org/download/attachments/67092/API_Portal.png?version=1&modificationDate=1480470488000&api=v2)
Metrics
- The metrics of service should be published at: http(s)://[hostname][:port]/admin/metrics
- MSB recommend dropwizard metrics for java and PyFormance for Python to generate the metrics data.
For example, the metrics data and UI of the services provided by Microservice Bus:
Metrics data
Image Removed
UI
Image Removed
Register service to the Microservice Bus
Operation | Register service to the Microservice Bus |
---|
URL | /api/microservices/v1/services |
---|
Verb | POST |
---|
Request |
Parameter | Mandatory | Parameter type | Data Type | Default | example | Description |
---|
Body | Y | Body | JSON String |
| {
"serviceName": "catalog",
"version": "v1",
"url": "/apiaai/catalog/v1v8",
"protocol": "REST",
"visualRange": "1",
"path":"/aai/v8" "nodes": [
{
"ip": "10.74.56.36",
"port": "8988",
"ttl": 0
}
]
}
| Described in the below table | createOrUpdate | N | Query | boolean | true |
| true: create new instances or replace the old instances if the instance with the same service name, ipand port ipandport exist
false: create new instances and remove all the old instances with the same service name |
Parameter | Mandatory | Data Type | Default | Description |
---|
serviceName | Y | String |
| Service Name | version | Y | String |
| Service Version | url | Y if protocol is 'REST' or 'UI' | String |
| the actual URL of the service to be registered | protocol | Y | String |
| supported protocols: 'REST', 'UI','TCP' | visualRange | F | String | 1 | Visibility of the service. External(can be accessed by external systems):0 Internal(can only be accessed by ONAP consumers):1 | path | F | String |
| The customized publish path of this service. If path parameter is specified when registering the service, the service will be published to api gateway under this path. Otherwise, the service will be published to api gateway using a fixed format: api/{version}/{serviceName}. | nodes | Y | List |
| ip: the ipof the ipofthe service instance node, it could also be a hostname like catalog.onap.org port: the port of the service instance node ttl: time to live, this parameter is reserved for later use |
|
---|
Response | example | Description |
---|
{
"serviceName": "catalog",
"version": "v1",
"url": "/api/catalog/v1",
"protocol": "REST",
"visualRange": "1",
"nodes": [
{
"ip": "10.74.55.66",
"port": "6666",
"ttl": 0,
"expiration": "2016-02-18T16:19:40+08:00",
"created_at": "2016-02-18T16:03:00+08:00",
"updated_at": "2016-02-18T16:03:00+08:00"
},
{
"ip": "10.74.56.37",
"port": "8989",
"ttl": 0,
"expiration": "2016-02-18T16:13:00+08:00",
"created_at": "2016-02-18T16:03:00+08:00",
"updated_at": "2016-02-18T16:03:00+08:00"
},
{
"ip": "10.74.56.36",
"port": "8988",
"ttl": 0,
"expiration": "2016-02-18T17:04:36+08:00",
"created_at": "2016-02-18T16:03:00+08:00",
"updated_at": "2016-02-18T16:03:00+08:00"
}
],
"status": "1"
}
| serviceName: service name version: version url: url of the created service instance protocol: supported protocols: 'REST', 'UI' nodes: the service instance nodes list to register ip: the ip of the service instance node, it could also be a hostname like catalog.onap.org port: the port of the service instance node ttl: time to live, this parameter is reserved for later use status: service status, 1:enabled,0:disabled |
|
---|
Success Code | 201 |
---|
Error Code | 415 Invalid Parameters 500 Internal Server Error |
---|
...