improve lifecycle data
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2026-01-28 08:49:04 +11:00
parent 93b5769145
commit ee01d8deac
6 changed files with 304 additions and 197 deletions

View File

@@ -104,6 +104,53 @@ const docTemplate = `{
}
}
},
"/api/diagnostics/daily-creation": {
"get": {
"description": "Returns counts of daily summary rows missing CreationTime and sample rows for the given date.",
"produces": [
"application/json"
],
"tags": [
"diagnostics"
],
"summary": "Daily summary CreationTime diagnostics",
"parameters": [
{
"type": "string",
"description": "Daily date (YYYY-MM-DD)",
"name": "date",
"in": "query",
"required": true
}
],
"responses": {
"200": {
"description": "Diagnostics result",
"schema": {
"$ref": "#/definitions/models.DailyCreationDiagnosticsResponse"
}
},
"400": {
"description": "Invalid request",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
}
},
"404": {
"description": "Summary not found",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
}
},
"500": {
"description": "Server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
}
}
}
}
},
"/api/encrypt": {
"post": {
"description": "Encrypts a plaintext value and returns the ciphertext.",
@@ -1134,6 +1181,90 @@ const docTemplate = `{
}
}
},
"models.DailyCreationDiagnosticsResponse": {
"type": "object",
"properties": {
"avg_is_present_lt_one_count": {
"type": "integer"
},
"date": {
"type": "string"
},
"missing_by_vcenter": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingByVcenter"
}
},
"missing_creation_count": {
"type": "integer"
},
"missing_creation_partial_count": {
"type": "integer"
},
"missing_creation_partial_samples": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingSample"
}
},
"missing_creation_pct": {
"type": "number"
},
"samples": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingSample"
}
},
"status": {
"type": "string"
},
"table": {
"type": "string"
},
"total_rows": {
"type": "integer"
}
}
},
"models.DailyCreationMissingByVcenter": {
"type": "object",
"properties": {
"missing_count": {
"type": "integer"
},
"vcenter": {
"type": "string"
}
}
},
"models.DailyCreationMissingSample": {
"type": "object",
"properties": {
"avg_is_present": {
"type": "number"
},
"name": {
"type": "string"
},
"samples_present": {
"type": "integer"
},
"snapshot_time": {
"type": "integer"
},
"vcenter": {
"type": "string"
},
"vm_id": {
"type": "string"
},
"vm_uuid": {
"type": "string"
}
}
},
"models.ErrorResponse": {
"type": "object",
"properties": {

View File

@@ -1170,6 +1170,90 @@
}
}
},
"models.DailyCreationDiagnosticsResponse": {
"type": "object",
"properties": {
"avg_is_present_lt_one_count": {
"type": "integer"
},
"date": {
"type": "string"
},
"missing_by_vcenter": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingByVcenter"
}
},
"missing_creation_count": {
"type": "integer"
},
"missing_creation_partial_count": {
"type": "integer"
},
"missing_creation_partial_samples": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingSample"
}
},
"missing_creation_pct": {
"type": "number"
},
"samples": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingSample"
}
},
"status": {
"type": "string"
},
"table": {
"type": "string"
},
"total_rows": {
"type": "integer"
}
}
},
"models.DailyCreationMissingByVcenter": {
"type": "object",
"properties": {
"missing_count": {
"type": "integer"
},
"vcenter": {
"type": "string"
}
}
},
"models.DailyCreationMissingSample": {
"type": "object",
"properties": {
"avg_is_present": {
"type": "number"
},
"name": {
"type": "string"
},
"samples_present": {
"type": "integer"
},
"snapshot_time": {
"type": "integer"
},
"vcenter": {
"type": "string"
},
"vm_id": {
"type": "string"
},
"vm_uuid": {
"type": "string"
}
}
},
"models.ErrorResponse": {
"type": "object",
"properties": {
@@ -1334,90 +1418,6 @@
"type": "string"
}
}
},
"models.DailyCreationDiagnosticsResponse": {
"type": "object",
"properties": {
"status": {
"type": "string"
},
"date": {
"type": "string"
},
"table": {
"type": "string"
},
"total_rows": {
"type": "integer"
},
"missing_creation_count": {
"type": "integer"
},
"missing_creation_pct": {
"type": "number"
},
"avg_is_present_lt_one_count": {
"type": "integer"
},
"missing_creation_partial_count": {
"type": "integer"
},
"missing_by_vcenter": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingByVcenter"
}
},
"samples": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingSample"
}
},
"missing_creation_partial_samples": {
"type": "array",
"items": {
"$ref": "#/definitions/models.DailyCreationMissingSample"
}
}
}
},
"models.DailyCreationMissingByVcenter": {
"type": "object",
"properties": {
"vcenter": {
"type": "string"
},
"missing_count": {
"type": "integer"
}
}
},
"models.DailyCreationMissingSample": {
"type": "object",
"properties": {
"vcenter": {
"type": "string"
},
"vm_id": {
"type": "string"
},
"vm_uuid": {
"type": "string"
},
"name": {
"type": "string"
},
"samples_present": {
"type": "integer"
},
"avg_is_present": {
"type": "number"
},
"snapshot_time": {
"type": "integer"
}
}
}
}
}
}

View File

@@ -126,6 +126,61 @@ definitions:
modified:
type: string
type: object
models.DailyCreationDiagnosticsResponse:
properties:
avg_is_present_lt_one_count:
type: integer
date:
type: string
missing_by_vcenter:
items:
$ref: '#/definitions/models.DailyCreationMissingByVcenter'
type: array
missing_creation_count:
type: integer
missing_creation_partial_count:
type: integer
missing_creation_partial_samples:
items:
$ref: '#/definitions/models.DailyCreationMissingSample'
type: array
missing_creation_pct:
type: number
samples:
items:
$ref: '#/definitions/models.DailyCreationMissingSample'
type: array
status:
type: string
table:
type: string
total_rows:
type: integer
type: object
models.DailyCreationMissingByVcenter:
properties:
missing_count:
type: integer
vcenter:
type: string
type: object
models.DailyCreationMissingSample:
properties:
avg_is_present:
type: number
name:
type: string
samples_present:
type: integer
snapshot_time:
type: integer
vcenter:
type: string
vm_id:
type: string
vm_uuid:
type: string
type: object
models.ErrorResponse:
properties:
message:
@@ -233,95 +288,9 @@ definitions:
status:
type: string
type: object
models.DailyCreationDiagnosticsResponse:
properties:
status:
type: string
date:
type: string
table:
type: string
total_rows:
type: integer
missing_creation_count:
type: integer
missing_creation_pct:
type: number
avg_is_present_lt_one_count:
type: integer
missing_creation_partial_count:
type: integer
missing_by_vcenter:
items:
$ref: '#/definitions/models.DailyCreationMissingByVcenter'
type: array
samples:
items:
$ref: '#/definitions/models.DailyCreationMissingSample'
type: array
missing_creation_partial_samples:
items:
$ref: '#/definitions/models.DailyCreationMissingSample'
type: array
type: object
models.DailyCreationMissingByVcenter:
properties:
vcenter:
type: string
missing_count:
type: integer
type: object
models.DailyCreationMissingSample:
properties:
vcenter:
type: string
vm_id:
type: string
vm_uuid:
type: string
name:
type: string
samples_present:
type: integer
avg_is_present:
type: number
snapshot_time:
type: integer
type: object
info:
contact: {}
paths:
/api/diagnostics/daily-creation:
get:
description: Returns counts of daily summary rows missing CreationTime and sample rows for the given date.
parameters:
- description: Daily date (YYYY-MM-DD)
in: query
name: date
required: true
type: string
produces:
- application/json
responses:
"200":
description: Diagnostics result
schema:
$ref: '#/definitions/models.DailyCreationDiagnosticsResponse'
"400":
description: Invalid request
schema:
$ref: '#/definitions/models.ErrorResponse'
"404":
description: Summary not found
schema:
$ref: '#/definitions/models.ErrorResponse'
"500":
description: Server error
schema:
$ref: '#/definitions/models.ErrorResponse'
summary: Daily summary CreationTime diagnostics
tags:
- diagnostics
/:
get:
description: Renders the main UI page.
@@ -383,6 +352,38 @@ paths:
summary: Cleanup vCenter inventory (deprecated)
tags:
- maintenance
/api/diagnostics/daily-creation:
get:
description: Returns counts of daily summary rows missing CreationTime and sample
rows for the given date.
parameters:
- description: Daily date (YYYY-MM-DD)
in: query
name: date
required: true
type: string
produces:
- application/json
responses:
"200":
description: Diagnostics result
schema:
$ref: '#/definitions/models.DailyCreationDiagnosticsResponse'
"400":
description: Invalid request
schema:
$ref: '#/definitions/models.ErrorResponse'
"404":
description: Summary not found
schema:
$ref: '#/definitions/models.ErrorResponse'
"500":
description: Server error
schema:
$ref: '#/definitions/models.ErrorResponse'
summary: Daily summary CreationTime diagnostics
tags:
- diagnostics
/api/encrypt:
post:
consumes: