...
The information on this page refers to License Statistics v6.11 21 and newer, which introduced the import wizard and redesigned the license server data import processability to use DNS and rDNS lookup to find missing host details during import. If you are using a version previous to v6.21, see documentation for previous versions. |
You can import license server data to an existing license server. License server data importation is available only when:
...
The API command for importing license server data (using curl) is shown below.
Code Block | ||
---|---|---|
| ||
#!/bin/sh curl -X POST "{HOSTNAME}/api/v2v3/admin/license-server/{LICENSE_SERVER_ID}/import?gather={GATHERING}&mergePolicy={MERGE_POLICY}&from={FROM}&to={TO}&resolveDomainNamesToIP={DNS}&findDomainNamesByIP={RDNS}" \ -H "accept: application/json" \ -H "X-Auth-token: {API_TOKEN}" \ -H "Content-Type: multipart/form-data" \ -F "file=@{FILE}" |
where:
Query Parameter | Example Variable | Type | Description | Default |
---|---|---|---|---|
HOSTNAME | string | License Statistics instance | ||
LICENSE_SERVER_ID | integer | License Server ID | ||
gather | GATHERING | string | Denials and/or Usage | "Denials,Usage" |
mergePolicy | MERGE_POLICY | string | Reject/Replace/Merge/Leave Tail | "Reject" |
from | FROM | string | Start of time range import; format: yyyy-MM-dd HH:mm[:ss] | Beginning of the log file |
to | TO | string | End of time range import; format: yyyy-MM-dd HH:mm[:ss] | End of the log file |
resolveDomainNamesToIP | DNS | boolean | Find unknown host IP address using DNS lookup | false |
findDomainNamesByIP | RDNS | boolean | Find unknown hostname using Reverse DNS lookup | false |
API_TOKEN | string | API token | ||
FILE | string | Name of the file to import |
The following examples show some uses of the import API command.
...
The following example shows the default values for the import API:
Code Block | ||
---|---|---|
| ||
#!/bin/sh curl -X POST "https://licstat-demo.x-formation.com/api/v2v3/admin/license-server/40/import \ -H "accept: application/json" \ -H "X-Auth-token: e765ee9c3ded6ca6e5e7f4d0d01189d0" \ -H "Content-Type: multipart/form-data" \ -F "file=@license-server.log" |
...
The following example shows using the import API command for importing denials only.
Code Block | ||
---|---|---|
| ||
#!/bin/sh curl -X POST "https://licstat-demo.x-formation.com/api/v2v3/admin/license-server/40/import?gather=Denials" \ -H "accept: application/json" \ -H "X-Auth-token: e765ee9c3ded6ca6e5e7f4d0d01189d0" \ -H "Content-Type: multipart/form-data" \ -F "file=@license-server.log" |
...
The following example shows using the import API command for importing usage only.
Code Block | ||
---|---|---|
| ||
#!/bin/sh curl -X POST "https://licstat-demo.x-formation.com/api/v2v3/admin/license-server/40/import?gather=Usage" \ -H "accept: application/json" \ -H "X-Auth-token: e765ee9c3ded6ca6e5e7f4d0d01189d0" \ -H "Content-Type: multipart/form-data" \ -F "file=@license-server.log" |
...
The following example shows using the import API command for importing with the "Replace" merge policy.
Code Block | ||
---|---|---|
| ||
#!/bin/sh curl -X POST "https://licstat-demo.x-formation.com/api/v2v3/admin/license-server/40/import?mergePolicy=Replace" \ -H "accept: application/json" \ -H "X-Auth-token: e765ee9c3ded6ca6e5e7f4d0d01189d0" \ -H "Content-Type: multipart/form-data" \ -F "file=@license-server.log" |
...
The following example shows using the import API command for importing denials from date range "2021-01-10 15:10:00" - "2021-02-10 19:13:23."
Code Block | ||
---|---|---|
| ||
#!/bin/sh curl -X POST "https://licstat-demo.x-formation.com/api/v2v3/admin/license-server/40/import?gather=Denials&from=2021-01-10%2015%3A10%3A00&to=2021-02-10%2019%3A13%3A23" \ -H "accept: application/json" \ -H "X-Auth-token: e765ee9c3ded6ca6e5e7f4d0d01189d0" \ -H "Content-Type: multipart/form-data" \ -F "file=@license-server.log" |
Example 6
The following example shows using the import API command for importing data using DNS and rDNS lookup for missing IP addresses and hostnames, respectively.
Code Block | ||
---|---|---|
| ||
#!/bin/sh
curl -X POST "https://licstat-demo.x-formation.com/api/v3/admin/license-server/40/import?resolveDomainNamesToIP=true&findDomainNamesByIP=true" \
-H "accept: application/json" \
-H "X-Auth-token: e765ee9c3ded6ca6e5e7f4d0d01189d0" \
-H "Content-Type: multipart/form-data" \
-F "file=@license-server.log" |
Response
The import operation is asynchronous, and all the examples given above add a new task to the queue. The "tid" key in the success response contains the unique identifier of the task .
Code Block |
---|
{ "success": true, "msg": null, "data": { "sst": "SCHEDULED", "ti": { "data": null, "sbtr": "Administrator", "sbtd": "2021-12-20 11:47:35", "tid": "import_527ddd6f-d7de-4854-bc99-839b5afd458e", "sts": "PENDING", "err": null } } } |
You can either check the status of the task in the script periodically until it has completed processing successfully, or simply close the script execution and allow the task to be completed in the background.
Task status request
Code Block | ||
---|---|---|
| ||
#!/bin/sh
curl -X POST "https://licstat-demo.x-formation.com/api/v3/admin/task/import_527ddd6f-d7de-4854-bc99-839b5afd458e/status" \
-H "accept: application/json" \
-H "X-Auth-token: e765ee9c3ded6ca6e5e7f4d0d01189d0" |
Task status response
Code Block |
---|
{
"success": true,
"msg": null,
"data": {
"data": null,
"sbtr": "Administrator",
"sbtd": "2021-12-20 11:53:36",
"tid": "import_527ddd6f-d7de-4854-bc99-839b5afd458e",
"sts": "SUCCESS",
"err": null
}
} |