doc: написал README.md

This commit is contained in:
Андрей Скирченко 2024-11-16 16:24:17 +03:00
parent 6a6c5c8f3a
commit d7f15f7b2f

View File

@ -0,0 +1,80 @@
# Описание
ПО TraceDelivery (DoDoTrace) предназначено для доставки файлов с удаленной машины
на машину пользователя по протоколу SFTP.
# Настройка перед запуском
Для настройки ПО в каталоге `data` расположены 2 файла: `connection.json` и `path.json`.
## `connection.json`
Отвечает за настройку подключения к удаленной машине.
Параметры:
- host: IP-адрес хоста в формате строки. Пример `"172.21.5.240"`,
- port: порт в формате целого числа. По умолчанию - порт 22. Пример `22`,
- username: имя пользователя для удаленной машины в формате строки. Пример `"smart"`
- password: пароль пользователя на удаленной машине в формате строки. Пример `"00000000"`
Пример заполнения настроек для подключения к ТСК:
```json
{
"host": "172.21.5.240",
"port": 22,
"username": "smart",
"password": "00000000"
}
```
## `path.json`
Отвечает за настройку объектов (каталогов) подписок.
Параметры:
- source: путь к каталогу - источнику файлов в формате строки
- buffer: путь к каталогу - буферу на машине пользователя в формате строки
- destination: путь к каталогу назначения, куда будут сохранены файлы в формате строки
- apply_filter: флаг применения фильтра в булевом формате
- sigma_filter: степень фильтрации в формате целого числа
Пример заполнения настроек для подключения к ТСК:
```json
[
{
"source": "/home/smart/PN/TWC/trace/Weld Point",
"buffer": "/home/andrei/PycharmProjects/traceDelivery/buffer",
"destination": "/home/andrei/Desktop/bla",
"apply_filter": true,
"sigma_filter": 3
},
{
"source": "/home/smart/PN/TWC/trace/test1",
"buffer": "/home/andrei/PycharmProjects/traceDelivery/buffer",
"destination": "/home/andrei/Desktop/bla",
"apply_filter": false,
"sigma_filter": 3
}
]
```
P.S.:
1. По структуре должно быть представлено в виде списка словарей.
2. Параметр `buffer` у каждого объекта должен указывать на один и тот же каталог: поведение при разных буферах не проверялось.
# Запуск
## Подготовка
1. Создать виртуальное окружение внутри корневого каталога проекта
2. Активировать виртуальное окружение
3. Установить зависимости из `requirements.txt`
## Запуск
1. Убедиться, что виртуальное окружение активировано
2. Выполнить в терминале `python3 src/main.py`
При успешном запуске в терминале появятся сообщения вида:
```
2024-11-16 16:21:31.829 | INFO | subscription.subscriber:_init_state:14 - Subscription to /home/smart/PN/TWC/trace/Weld Point done!
2024-11-16 16:21:31.938 | INFO | subscription.subscriber:_init_state:14 - Subscription to /home/smart/PN/TWC/trace/test1 done!
```