docs: sync README and CLAUDE with current CLI and live API behavior
This commit is contained in:
@@ -64,7 +64,9 @@ make build
|
|||||||
2. `POST /api/upload` принимает архив и передаёт его в `parser.BMCParser`.
|
2. `POST /api/upload` принимает архив и передаёт его в `parser.BMCParser`.
|
||||||
3. `DetectFormat()` выбирает parser с максимальным confidence.
|
3. `DetectFormat()` выбирает parser с максимальным confidence.
|
||||||
4. Результат сохраняется в памяти (`Server.result`) и отдаётся через API.
|
4. Результат сохраняется в памяти (`Server.result`) и отдаётся через API.
|
||||||
5. UI строит вкладки: конфигурация, прошивки, сенсоры, серийники, события.
|
5. `POST /api/collect` запускает in-memory mock lifecycle live-сбора (`queued -> running -> success|failed`, поддерживается `cancel`).
|
||||||
|
6. Для live-flow `AnalysisResult` обновляется только на `success` (при `failed/canceled` остаётся предыдущий результат).
|
||||||
|
7. UI строит вкладки: конфигурация, прошивки, сенсоры, серийники, события.
|
||||||
|
|
||||||
## Поддерживаемые parser modules
|
## Поддерживаемые parser modules
|
||||||
|
|
||||||
@@ -80,6 +82,9 @@ make build
|
|||||||
|
|
||||||
```
|
```
|
||||||
POST /api/upload
|
POST /api/upload
|
||||||
|
POST /api/collect
|
||||||
|
GET /api/collect/{id}
|
||||||
|
POST /api/collect/{id}/cancel
|
||||||
GET /api/status
|
GET /api/status
|
||||||
GET /api/parsers
|
GET /api/parsers
|
||||||
GET /api/events
|
GET /api/events
|
||||||
@@ -108,6 +113,7 @@ POST /api/shutdown
|
|||||||
- Код распаковки `.zip` есть, но в текущем upload-пути `zip` не обрабатывается.
|
- Код распаковки `.zip` есть, но в текущем upload-пути `zip` не обрабатывается.
|
||||||
- Флаг `--file` присутствует в CLI-конфиге, но preload в `Server.Run()` сейчас не выполняется.
|
- Флаг `--file` присутствует в CLI-конфиге, но preload в `Server.Run()` сейчас не выполняется.
|
||||||
- Данные хранятся только в памяти процесса; перезапуск очищает состояние.
|
- Данные хранятся только в памяти процесса; перезапуск очищает состояние.
|
||||||
|
- Live-сбор пока mock-only (реальные Redfish/IPMI коннекторы ещё не подключены).
|
||||||
|
|
||||||
## Практические рекомендации для доработок
|
## Практические рекомендации для доработок
|
||||||
|
|
||||||
|
|||||||
20
README.md
20
README.md
@@ -12,7 +12,7 @@
|
|||||||
- Конфигурация сервера (CPU, RAM, диски, и т.д.)
|
- Конфигурация сервера (CPU, RAM, диски, и т.д.)
|
||||||
- **Встроенный веб-интерфейс**: Человекочитаемая визуализация данных
|
- **Встроенный веб-интерфейс**: Человекочитаемая визуализация данных
|
||||||
- **Экспорт данных**: Поддержка экспорта в CSV, JSON и TXT форматы
|
- **Экспорт данных**: Поддержка экспорта в CSV, JSON и TXT форматы
|
||||||
- **Автоматическое определение формата**: Поддержка различных форматов архивов (tar.gz, zip)
|
- **Автоматическое определение формата**: Для upload path сейчас поддержаны tar.gz/tgz/tar (zip в плане доработки upload)
|
||||||
|
|
||||||
## Требования
|
## Требования
|
||||||
|
|
||||||
@@ -38,29 +38,29 @@ make build
|
|||||||
curl -L https://git.mchus.pro/mchus/logpile/-/releases/latest/download/logpile-linux-amd64.tar.gz | tar xz
|
curl -L https://git.mchus.pro/mchus/logpile/-/releases/latest/download/logpile-linux-amd64.tar.gz | tar xz
|
||||||
|
|
||||||
# Запуск
|
# Запуск
|
||||||
./logpile serve
|
./logpile
|
||||||
```
|
```
|
||||||
|
|
||||||
## Быстрый старт
|
## Быстрый старт
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Запуск веб-сервера
|
# Запуск веб-сервера
|
||||||
./bin/logpile serve
|
./bin/logpile
|
||||||
|
|
||||||
# Открыть в браузере
|
# Открыть в браузере
|
||||||
open http://localhost:8080
|
open http://localhost:8082
|
||||||
|
|
||||||
# С указанием порта
|
# С указанием порта
|
||||||
./bin/logpile serve --port 9000
|
./bin/logpile --port 9000
|
||||||
|
|
||||||
# С предзагрузкой файла
|
# Не открывать браузер автоматически
|
||||||
./bin/logpile serve --file /path/to/bmc-archive.tar.gz
|
./bin/logpile --no-browser
|
||||||
```
|
```
|
||||||
|
|
||||||
## Функционал
|
## Функционал
|
||||||
|
|
||||||
### 1. Анализ архивов
|
### 1. Анализ архивов
|
||||||
- Поддержка форматов: tar.gz, zip
|
- Поддержка upload path: tar.gz/tgz/tar
|
||||||
- Автоматическое определение производителя
|
- Автоматическое определение производителя
|
||||||
- Извлечение всех доступных данных из архива
|
- Извлечение всех доступных данных из архива
|
||||||
|
|
||||||
@@ -155,13 +155,15 @@ POST /api/shutdown # Завершить работу приложени
|
|||||||
"job_id": "job_a1b2c3d4e5f6g7h8",
|
"job_id": "job_a1b2c3d4e5f6g7h8",
|
||||||
"status": "queued",
|
"status": "queued",
|
||||||
"progress": 0,
|
"progress": 0,
|
||||||
"logs": ["Job queued"],
|
"logs": ["Задача поставлена в очередь"],
|
||||||
|
"created_at": "2026-02-04T10:15:20Z",
|
||||||
"updated_at": "2026-02-04T10:15:20Z"
|
"updated_at": "2026-02-04T10:15:20Z"
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
`POST /api/collect/{id}/cancel` возвращает `200 OK` и переводит задачу в `canceled`.
|
`POST /api/collect/{id}/cancel` возвращает `200 OK` и переводит задачу в `canceled`.
|
||||||
Жизненный цикл mock-задачи: `queued -> running -> success|failed` (если `host` содержит `fail`, задача переходит в `failed`).
|
Жизненный цикл mock-задачи: `queued -> running -> success|failed` (если `host` содержит `fail`, задача переходит в `failed`).
|
||||||
|
`AnalysisResult` для API-сценария обновляется на `success`; при `failed/canceled` предыдущие загруженные данные сохраняются.
|
||||||
|
|
||||||
## Структура проекта
|
## Структура проекта
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user