2.3.3 Creating Collector
This API creates a collector. However, it cannot create a collector for a custom application.
Execution permission
Admin
API version
v1
Request format
POST http[s]://host:port/Analytics/version/objects/Collectors
Request body
The structure of the request body and the object attributes are as follows:Collector
{
"name":"...",
"collectorType":"...",
"osType":"...",
"autoCollectionType":"...",
"collectorCredentials":[{
"ipAddress":"...",
"userId":"...",
"password":"...",
"updatePassword":"...",
"portNumber":"...",
"hypertextTransferProtocolType":"...",
"domainName":"...",
"rootPassword":"...",
"updateRootPassword":"...",
"useAdministrativeShares":"...",
"shareName":"...",
"sharedFolder":"...",
"logicalHostName":"...",
"useLogicalHostName":"..."
},
:
]
}
Collector (Type: Collector)
|
Attribute |
Type |
Description |
|---|---|---|
|
name |
string |
Collector name |
|
collectorType |
enum |
Collector type. (For details about the specifiable values, see the table ProtocolType in List of enumerators.) The specifiable values are as follows:
|
|
osType |
enum |
Type of OS. This member is only set when the collectorType is AJS, PFM, or IM. (For details about the specifiable values, see the table CollectorOsType in List of enumerators.) |
|
autoCollectionType |
enum |
Settings for periodic executions of the collector. (For details about the specifiable values, see the table ConnectType in List of enumerators.) The specifiable values are as follows:
|
|
collectorCredentials |
CollectorCredential[] |
Authentication information used for connections to monitoring targets. |
collectorCredentials (Type: CollectorCredential)
|
Attribute |
Type |
Description |
|---|---|---|
|
ipAddress |
string |
IP address or host name used for connections to management software. |
|
userId |
string |
User ID used for connections to management software. Specify a string of 255 or fewer bytes. |
|
password |
string |
Password used for connections to management software. Encode a string of 255 or fewer bytes in Base64. |
|
updatePassword |
boolean |
Whether to change the password used for connections to management software. ・true: Password is changed ・false: Password is not changed If this member is omitted, false is set. |
|
portNumber |
int |
Port number used for connections to management software. |
|
hypertextTransferProtocolType |
enum |
Whether to use SSL (HTTPS) for connections to management software. (For details about the specifiable values, see the table HypertextTransferProtocolType in List of enumerators.) The specifiable values are as follows:
|
|
domainName |
string |
Domain name: Used for application linkage when Windows is selected. |
|
rootPassword |
string |
root password: Used for application linkage when Unix is selected. |
|
updateRootPassword |
boolean |
To change the password, set true. Use only for updates. |
|
useAdministrativeShares |
boolean |
To share management, set true. |
|
shareName |
string |
share Name |
|
sharedFolder |
string |
shared Folder |
|
logicalHostName |
string |
Logical Host Name |
|
useLogicalHostName |
boolean |
To use logical host name, set true. |
Response body
The structure of the response body and the object attributes are as follows:Collector
{
"instanceID":"...",
"name":"...",
"collectorType":"...",
"osType":"...",
"autoCollectionType":"...",
"connectResult":"...",
"refreshStatus":"...",
"message":"...",
"lastRefreshed":"...",
"refreshDateForInventory":"...",
"refreshDateForPerformance":"...",
"numOfHypervisors":"...",
"numOfVms":"...",
"numOfApplications":"...",
"collectorCredentials":[{
"ipAddress":"...",
"userId":"...",
"portNumber":"...",
"hypertextTransferProtocolType":"...",
"domainName":"...",
"useAdministrativeShares":"...",
"shareName":"...",
"sharedFolder":"...",
"logicalHostName":"...",
"useLogicalHostName":"..."
},
:
],
"productName":"...",
"providerName":"...",
"refreshDateForApp":"..."
}
Collector (Type: Collector)
|
Attribute |
Type |
Description |
|---|---|---|
|
instanceID |
long |
ID for identifying instances. |
|
name |
string |
Collector name |
|
collectorType |
enum |
Collector type. (For details about the specifiable values, see the table ProtocolType in List of enumerators.) The specifiable values are as follows:
|
|
osType |
enum |
Type of OS. This member is only set when the collectorType is AJS, PFM, or IM. (For details about the specifiable values, see the table CollectorOsType in List of enumerators.) |
|
autoCollectionType |
enum |
Settings for periodic executions of the collector. (For details about the specifiable values, see the table ConnectType in List of enumerators.) The specifiable values are as follows:
|
|
connectResult |
enum |
Last execution result of the collector. (For details about the specifiable values, see the table ConnectStatusType in List of enumerators.) The specifiable values are as follows:
|
|
refreshStatus |
enum |
Execution status of the collector. (For details about the specifiable values, see the table ConnectStatusType in List of enumerators.) The specifiable values are as follows:
|
|
message |
string |
Message of the execution result of the collector |
|
lastRefreshed |
dateTime |
Last refresh date and time |
|
refreshDateForInventory |
dateTime |
Refresh date and time for the configuration information |
|
refreshDateForPerformance |
dateTime |
Refresh date and time for the performance information |
|
numOfHypervisors |
int |
Number of hypervisors found by the collector |
|
numOfVms |
int |
Number of virtual machines found by the collector |
|
numOfApplications |
int |
Number of applications found by the collector. |
|
collectorCredentials |
CollectorCredential[] |
Authentication information used for connections to monitoring targets. |
|
productName |
string |
Collected-product name |
|
providerName |
string |
Provider name |
|
refreshDateForApp |
dateTime |
Date definition was applied |
collectorCredentials (Type: CollectorCredential)
|
Attribute |
Type |
Description |
|---|---|---|
|
ipAddress |
string |
IP address or host name used for connections to management software. |
|
userId |
string |
User ID used for connections to management software. Specify a string of 255 or fewer bytes. |
|
portNumber |
int |
Port number used for connections to management software. |
|
hypertextTransferProtocolType |
enum |
Whether to use SSL (HTTPS) for connections to management software. (For details about the specifiable values, see the table HypertextTransferProtocolType in List of enumerators.) The specifiable values are as follows:
|
|
domainName |
string |
Domain name: Used for application linkage when Windows is selected. |
|
useAdministrativeShares |
boolean |
To share management, set true. |
|
shareName |
string |
share Name |
|
sharedFolder |
string |
shared Folder |
|
logicalHostName |
string |
Logical Host Name |
|
useLogicalHostName |
boolean |
To use logical host name, set true. |
Status codes
|
Status code |
Reason phrase |
Description |
|---|---|---|
|
201 |
Created |
Success. |
|
400 |
Bad Request |
- A format of request body is invalid - A request is invalid. |
|
401 |
Unauthorized |
No login privilege. |
|
403 |
Forbidden |
No create privilege. |
|
409 |
Conflict |
A resource with the same name exists. |
|
412 |
Precondition Failed |
The server is not available. |
|
500 |
Internal Server Error |
Server processing error. |
Example code
[Request Header]
POST /Analytics/v1/objects/Collectors HTTP/1.1
Authorization: Basic c3lzdGVtOm1hbmFnZXI=
User-Agent: curl/7.33.0
Host: localhost:22015
Accept: application/json
Content-Type: application/json
Accept-Language: ja
Content-Length: 236
[Request Body]
{
"name": "test Collector",
"autoCollectionType": "AutoConnect",
"collectorType": "VCENTER",
"collectorCredentials": [
{
"ipAddress": "172.17.17.113",
"userId": "test",
"password": "dGVzdA==",
"portNumber": 443,
"hypertextTransferProtocolType": "HTTPS"
}
]
}
[Response Header]
HTTP/1.1 201 Created
Date: Fri, 27 Nov 2015 08:23:46 GMT
Server: Cosminexus HTTP Server
Cache-Control: no-cache
WWW-Authenticate: HSSO bfb7bb1ac5122d4e95bddc86cfb215f4c04715_WVlGcHsLfg5ffg0I_V0810
Location: http://localhost:22015/Analytics/v1/objects/Collectors/13
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked
Content-Type: application/json
[Response Body]
{
"instanceID" : 13,
"name" : "vCenter_71",
"collectorType" : "VCENTER",
"autoCollectionType" : "AutoConnect",
"connectResult" : "Succeeded",
"refreshStatus" : "NoConnect",
"lastRefreshed" : "2016-11-21T17:17:59.926+09:00",
"refreshDateForInventory" : "2016-11-21T16:52:03.271+09:00",
"refreshDateForPerformance" : "2016-11-21T17:17:59.926+09:00",
"numOfHypervisors" : 3,
"numOfVms" : 33,
"numOfStorages" : 0,
"numOfApplications" : 0,
"collectorCredentials" : [ {
"ipAddress" : "172.25.73.71",
"userId" : "administrator@vsphere.local",
"portNumber" : 443,
"hypertextTransferProtocolType" : "HTTPS"
} ]
}