chore: add logparser logic for agent and add parsed log to clickhouse
ci-agent / build (push) Failing after 3m30s

This commit is contained in:
d3m0k1d
2026-04-04 06:29:07 +03:00
parent c59d122e04
commit 477dd94227
16 changed files with 1226 additions and 409 deletions
+127 -122
View File
@@ -31,7 +31,7 @@ const docTemplate = `{
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/handlers.AgentInfo"
"$ref": "#/definitions/internal_handlers.AgentInfo"
}
}
}
@@ -63,7 +63,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/repository.DeployAgentsRequest"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployAgentsRequest"
}
}
],
@@ -71,7 +71,7 @@ const docTemplate = `{
"200": {
"description": "Deployment results with tokens for each server",
"schema": {
"$ref": "#/definitions/repository.DeployResponse"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResponse"
}
},
"400": {
@@ -114,7 +114,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/handlers.RegisterRequest"
"$ref": "#/definitions/internal_handlers.RegisterRequest"
}
}
],
@@ -122,7 +122,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/handlers.RegisterResponse"
"$ref": "#/definitions/internal_handlers.RegisterResponse"
}
}
}
@@ -152,7 +152,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/repository.RegistrationRequest"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.RegistrationRequest"
}
}
],
@@ -186,7 +186,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/repository.LoginRequest"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginRequest"
}
}
],
@@ -194,7 +194,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/repository.LoginResponse"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginResponse"
}
},
"400": {
@@ -244,7 +244,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/repository.TokenCreate"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenCreate"
}
}
],
@@ -340,7 +340,7 @@ const docTemplate = `{
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/repository.Tokens"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens"
}
}
},
@@ -426,7 +426,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/repository.Tokens"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens"
}
},
"400": {
@@ -481,7 +481,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/repository.TokenUpdate"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdate"
}
}
],
@@ -661,7 +661,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/repository.TokenPasswordReset"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenPasswordReset"
}
}
],
@@ -729,7 +729,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/repository.TokenUpdatePermissions"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdatePermissions"
}
}
],
@@ -789,7 +789,7 @@ const docTemplate = `{
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/repository.Tokens"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens"
}
}
},
@@ -819,7 +819,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/repository.Tokens"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens"
}
},
"401": {
@@ -896,7 +896,7 @@ const docTemplate = `{
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/storage.LogEntry"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_storage.LogEntry"
}
}
}
@@ -921,7 +921,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/handlers.InsertLogRequest"
"$ref": "#/definitions/internal_handlers.InsertLogRequest"
}
}
],
@@ -981,7 +981,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/handlers.InsertLogsRequest"
"$ref": "#/definitions/internal_handlers.InsertLogsRequest"
}
}
],
@@ -1023,6 +1023,11 @@ const docTemplate = `{
},
"/logs/mock": {
"get": {
"security": [
{
"Bearer": []
}
],
"description": "Returns 100 mock log entries for frontend development (no ClickHouse required)",
"produces": [
"application/json"
@@ -1071,7 +1076,7 @@ const docTemplate = `{
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/storage.LogEntry"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_storage.LogEntry"
}
}
}
@@ -1103,90 +1108,7 @@ const docTemplate = `{
}
},
"definitions": {
"handlers.AgentInfo": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"services": {
"type": "array",
"items": {
"type": "string"
}
},
"token": {
"type": "string"
}
}
},
"handlers.InsertLogRequest": {
"type": "object",
"required": [
"agent",
"level",
"message",
"service"
],
"properties": {
"agent": {
"type": "string"
},
"level": {
"type": "string"
},
"message": {
"type": "string"
},
"service": {
"type": "string"
},
"timestamp": {
"type": "string"
}
}
},
"handlers.InsertLogsRequest": {
"type": "object",
"required": [
"logs"
],
"properties": {
"logs": {
"type": "array",
"items": {
"$ref": "#/definitions/handlers.InsertLogRequest"
}
}
}
},
"handlers.RegisterRequest": {
"type": "object",
"required": [
"csr",
"token"
],
"properties": {
"csr": {
"type": "string"
},
"token": {
"type": "string"
}
}
},
"handlers.RegisterResponse": {
"type": "object",
"properties": {
"ca_cert": {
"type": "string"
},
"client_cert": {
"type": "string"
}
}
},
"repository.AgentDeployConfig": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AgentDeployConfig": {
"description": "Configuration for deploying HellreigN agent to a single server",
"type": "object",
"required": [
@@ -1204,7 +1126,7 @@ const docTemplate = `{
"authMethod": {
"allOf": [
{
"$ref": "#/definitions/repository.AuthMethod"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AuthMethod"
}
],
"example": "key"
@@ -1212,7 +1134,7 @@ const docTemplate = `{
"deployType": {
"allOf": [
{
"$ref": "#/definitions/repository.DeployType"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployType"
}
],
"example": "docker"
@@ -1239,7 +1161,7 @@ const docTemplate = `{
}
}
},
"repository.AuthMethod": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AuthMethod": {
"description": "SSH authentication method: key or password",
"type": "string",
"enum": [
@@ -1251,7 +1173,7 @@ const docTemplate = `{
"AuthMethodPassword"
]
},
"repository.DeployAgentsRequest": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployAgentsRequest": {
"description": "Request to deploy HellreigN agents to multiple servers",
"type": "object",
"required": [
@@ -1262,12 +1184,12 @@ const docTemplate = `{
"type": "array",
"minItems": 1,
"items": {
"$ref": "#/definitions/repository.AgentDeployConfig"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.AgentDeployConfig"
}
}
}
},
"repository.DeployResponse": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResponse": {
"description": "Response containing deployment results and registration tokens",
"type": "object",
"properties": {
@@ -1278,12 +1200,12 @@ const docTemplate = `{
"results": {
"type": "array",
"items": {
"$ref": "#/definitions/repository.DeployResult"
"$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResult"
}
}
}
},
"repository.DeployResult": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployResult": {
"description": "Result of deploying to a single server",
"type": "object",
"properties": {
@@ -1309,7 +1231,7 @@ const docTemplate = `{
}
}
},
"repository.DeployType": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.DeployType": {
"description": "Type of deployment: docker or binary",
"type": "string",
"enum": [
@@ -1321,7 +1243,7 @@ const docTemplate = `{
"DeployTypeBinary"
]
},
"repository.LoginRequest": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginRequest": {
"type": "object",
"required": [
"login",
@@ -1336,7 +1258,7 @@ const docTemplate = `{
}
}
},
"repository.LoginResponse": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.LoginResponse": {
"type": "object",
"properties": {
"is_active": {
@@ -1365,7 +1287,7 @@ const docTemplate = `{
}
}
},
"repository.RegistrationRequest": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.RegistrationRequest": {
"type": "object",
"required": [
"label"
@@ -1376,7 +1298,7 @@ const docTemplate = `{
}
}
},
"repository.TokenCreate": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenCreate": {
"type": "object",
"required": [
"last_name",
@@ -1411,7 +1333,7 @@ const docTemplate = `{
}
}
},
"repository.TokenPasswordReset": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenPasswordReset": {
"type": "object",
"required": [
"new_password"
@@ -1422,7 +1344,7 @@ const docTemplate = `{
}
}
},
"repository.TokenUpdate": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdate": {
"type": "object",
"properties": {
"last_name": {
@@ -1433,7 +1355,7 @@ const docTemplate = `{
}
}
},
"repository.TokenUpdatePermissions": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.TokenUpdatePermissions": {
"type": "object",
"properties": {
"is_active": {
@@ -1450,7 +1372,7 @@ const docTemplate = `{
}
}
},
"repository.Tokens": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_repository.Tokens": {
"type": "object",
"properties": {
"id": {
@@ -1482,7 +1404,7 @@ const docTemplate = `{
}
}
},
"storage.LogEntry": {
"gitea_d3m0k1d_ru_d3m0k1d_HellreigN_backend_internal_storage.LogEntry": {
"type": "object",
"properties": {
"agent": {
@@ -1501,6 +1423,89 @@ const docTemplate = `{
"type": "string"
}
}
},
"internal_handlers.AgentInfo": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"services": {
"type": "array",
"items": {
"type": "string"
}
},
"token": {
"type": "string"
}
}
},
"internal_handlers.InsertLogRequest": {
"type": "object",
"required": [
"agent",
"level",
"message",
"service"
],
"properties": {
"agent": {
"type": "string"
},
"level": {
"type": "string"
},
"message": {
"type": "string"
},
"service": {
"type": "string"
},
"timestamp": {
"type": "string"
}
}
},
"internal_handlers.InsertLogsRequest": {
"type": "object",
"required": [
"logs"
],
"properties": {
"logs": {
"type": "array",
"items": {
"$ref": "#/definitions/internal_handlers.InsertLogRequest"
}
}
}
},
"internal_handlers.RegisterRequest": {
"type": "object",
"required": [
"csr",
"token"
],
"properties": {
"csr": {
"type": "string"
},
"token": {
"type": "string"
}
}
},
"internal_handlers.RegisterResponse": {
"type": "object",
"properties": {
"ca_cert": {
"type": "string"
},
"client_cert": {
"type": "string"
}
}
}
},
"securityDefinitions": {