Resto.Front.Api.Console
1.2.2
See the version list below for details.
dotnet add package Resto.Front.Api.Console --version 1.2.2
NuGet\Install-Package Resto.Front.Api.Console -Version 1.2.2
<PackageReference Include="Resto.Front.Api.Console" Version="1.2.2" />
<PackageVersion Include="Resto.Front.Api.Console" Version="1.2.2" />
<PackageReference Include="Resto.Front.Api.Console" />
paket add Resto.Front.Api.Console --version 1.2.2
#r "nuget: Resto.Front.Api.Console, 1.2.2"
#:package Resto.Front.Api.Console@1.2.2
#addin nuget:?package=Resto.Front.Api.Console&version=1.2.2
#tool nuget:?package=Resto.Front.Api.Console&version=1.2.2
Resto.Front.Api.Console# Resto.Front.Api.Console# Resto.Front.Api.Console# Resto.Front.Api.Console
Консольное приложение для мониторинга и отладки Resto Front API. Позволяет видеть логи приложения в реальном времени для плагинов iiko.
✨ Что нового в версии 1.2.0Консольное приложение для мониторинга и отладки Resto Front API. Позволяет видеть логи приложения в реальном времени для плагинов iiko.
Теперь с DLL библиотекой! Больше не нужно копировать исходный код - просто установите пакет через NuGet и используйте!
Преимущества## ПреимуществаКонсольное приложение для мониторинга и отладки Resto Front API. Позволяет видеть логи приложения в реальном времени для плагинов iiko.# Resto.Front.Api.Console
Простая установка: Один NuGet пакет - и всё готово к работе
Мониторинг в реальном времени: Получайте логи от плагинов через Named Pipes
Цветное форматирование: Автоматическое выделение сообщений по уровню (ERROR, WARN, INFO)- Мониторинг в реальном времени: Получайте логи от плагинов через Named Pipes
Автоматическое перенаправление: Console.WriteLine автоматически попадает в консоль мониторинга
Graceful shutdown: Корректная остановка работы на Ctrl+C- Цветное форматирование: Автоматическое выделение сообщений по уровню (ERROR, WARN, INFO)
Установка- Простейшая интеграция: Автоматическое перенаправление Console.WriteLine в консоль мониторинга## ПреимуществаКонсольное приложение для мониторинга и отладки Resto Front API. Позволяет видеть логи приложения в реальном времени для плагинов iiko.
# Установка через NuGet Package Manager
Install-Package Resto.Front.Api.Console
# Или через .NET CLI## Установка
dotnet add package Resto.Front.Api.Console
```- **Мониторинг в реальном времени**: Получайте логи от плагинов через Named Pipes## Преимущества
**Вот и всё!** Пакет автоматически добавит ссылку на библиотеку `Resto.Front.Api.Console.Client.dll`.```bash
## Использование# Установка через NuGet Package Manager- **Цветное форматирование**: Автоматическое выделение сообщений по уровню (ERROR, WARN, INFO)
### Шаг 1: Добавьте using в свой кодInstall-Package Resto.Front.Api.Console
```csharp- **Автоматический автозапуск**: Консоль автоматически запускается с плагином- **Мониторинг в реальном времени**: Получайте логи от плагинов через Named Pipes
using RestoFrontApiConsole;
# Или через .NET CLI
public class MyPlugin
{dotnet add package Resto.Front.Api.Console- **Простейшая интеграция**: Автоматическое перенаправление `Console.WriteLine` в консоль мониторинга- **Цветное форматирование**: Автоматическое выделение сообщений по уровню (ERROR, WARN, INFO)
public void DoWork()
{```
// Просто используйте Console.WriteLine
Console.WriteLine("[INFO] Плагин успешно запущен");- **Graceful shutdown**: Корректная остановка работы на Ctrl+C- **Автоматический автозапуск**: Консоль автоматически запускается с плагином
Console.WriteLine("[ERROR] Произошла ошибка: {0}", errorMessage);
Console.WriteLine("[WARN] Предупреждение");**Важно:** После установки пакета скопируйте файл `Console.cs` из папки пакета в свой проект.
Console.WriteLine("Обычное сообщение");
}- **Простейшая интеграция**: Автоматическое перенаправление `Console.WriteLine` в консоль мониторинга
}
```## Использование
### Шаг 2: Запустите консоль мониторинга## Установка- **Graceful shutdown**: Корректная остановка работы на Ctrl+C
Консоль находится в папке `tools` пакета NuGet:### Шаг 1: Добавление Console.cs в проект
**Вариант А: Запуск вручную**
```bash
# Найдите в папке packagesПосле установки NuGet пакета:
.\packages\Resto.Front.Api.Console.1.2.0\tools\Resto.Front.Console.exe
``````bash## Установка
**Вариант Б: Копирование в папку с плагином (рекомендуется)**1. Откройте папку пакета:
```bash
# Скопируйте в папку с вашим плагином - Для packages.config: `packages\Resto.Front.Api.Console.1.1.2\src\Console.cs`# Установка через NuGet Package Manager
copy .\packages\Resto.Front.Api.Console.1.2.0\tools\Resto.Front.Console.exe .\bin\Debug\
- Для PackageReference: найдите в кэше NuGet
# Теперь консоль будет запускаться автоматически
```2. Скопируйте файл `Console.cs` в папку вашего проектаInstall-Package Resto.Front.Api.Console```bash
### Шаг 3: Запустите ваш плагин3. Добавьте файл в проект через Solution Explorer (Add → Existing Item)
При первом вызове `Console.WriteLine()` библиотека:4. При необходимости измените namespace на ваш# Установка через NuGet Package Manager
1. Попытается автоматически запустить `Resto.Front.Console.exe` (если он в той же папке)
2. Подключится к консоли через Named Pipe
3. Перенаправит весь вывод Console.WriteLine
### Шаг 2: Использование в коде# Или через .NET CLIInstall-Package Resto.Front.Api.Console
## API Reference
### Console.WriteLine(string message)
```csharpdotnet add package Resto.Front.Api.Console
Записывает сообщение в консоль мониторинга.
using RestoFrontApiConsole; // или ваш namespace
```csharp
Console.WriteLine("[INFO] Сообщение");```# Или через .NET CLI
public class MyPlugin
Console.WriteLine(string format, params object[] args)
{dotnet add package Resto.Front.Api.Console
Записывает форматированное сообщение.
public void DoWork()
Console.WriteLine("[ERROR] Ошибка: {0}", ex.Message); {## Использование```
// Просто используйте Console.WriteLine
Console.IsConnected
Console.WriteLine("[INFO] Плагин успешно запущен");
Проверяет, активно ли подключение к консоли.
Console.WriteLine("[ERROR] Произошла ошибка: {0}", errorMessage);
if (Console.IsConnected) Console.WriteLine("[WARN] Предупреждение");### 1. В коде плагина## Использование
{
Console.WriteLine("Подключено!"); Console.WriteLine("Обычное сообщение");
}
``` }
### Console.Shutdown()}
Закрывает подключение (обычно не требуется).``````csharp### 1. В коде плагина
```csharp
Console.Shutdown();
```### Шаг 3: Запуск консоли мониторингаusing RestoFrontApiConsole;
## Форматирование сообщений
Консоль автоматически окрашивает сообщения:Консоль находится в папке `tools` пакета:```csharp
| Префикс | Цвет | Назначение |
|---------|------|------------|
| `[ERROR]` | 🔴 Красный | Ошибки |**Вариант 1: Запуск вручную**// Просто используйте Console.WriteLine - он автоматически перенаправится в консоль мониторингаusing RestoFrontApiConsole;
| `[WARN]` | 🟡 Желтый | Предупреждения |
| `[INFO]` или `success` | 🟢 Зеленый | Информация |```bash
| `===` или `***` | 🔵 Голубой | Разделители |
.\packages\Resto.Front.Api.Console.1.1.2\tools\Resto.Front.Console.exeConsole.WriteLine("[INFO] Плагин успешно запущен");
## Архитектура
Пакет состоит из двух компонентов:
Console.WriteLine("[ERROR] Произошла ошибка: {0}", errorMessage);// Просто используйте Console.WriteLine - он автоматически перенаправится в консоль мониторинга
Resto.Front.Console.exe (в
tools/) - консольное приложение-серверResto.Front.Api.Console.Client.dll (в
lib/net472/) - клиентская библиотекаВариант 2: Копирование в папку с плагином
Взаимодействие через Named Pipes (IikoPluginConsole).```bashConsole.WriteLine("[INFO] Плагин успешно запущен");
Требования# Скопируйте в папку с вашим плагином для автоматического запуска
.NET Framework 4.7.2 или вышеcopy .\packages\Resto.Front.Api.Console.1.1.2\tools\Resto.Front.Console.exe .\bin\Debug// Без форматирования уровнейConsole.WriteLine("[ERROR] Произошла ошибка: {0}", errorMessage);
Windows (Named Pipes)
## Конфигурация
Console.WriteLine("Обычное сообщение");
По умолчанию:
- Имя pipe: `IikoPluginConsole`### Шаг 4: Управление подключением
- Таймаут подключения: 2 секунды
- Автоматический вывод цветных логов: включенConsole.WriteLine("[WARN] Предупреждение");// Без форматирования уровней
## Решение проблем```csharp
### ❌ "Не удалось найти тип или имя пространства имен RestoFrontApiConsole"// Проверка статуса подключения```Console.WriteLine("Обычное сообщение");
**Решение:**if (Console.IsConnected)
1. Убедитесь, что пакет установлен: `Install-Package Resto.Front.Api.Console`
2. Проверьте наличие ссылки на `Resto.Front.Api.Console.Client.dll` в References{Console.WriteLine("[WARN] Предупреждение");
3. Пересоберите проект
Console.WriteLine("Подключение активно");
### ❌ Консоль не подключается
}### 2. Запуск консоли мониторинга```
**Решение:**
1. Запустите `Resto.Front.Console.exe` ДО запуска плагина
2. Проверьте, что консоль показывает "Waiting for plugin connection..."
3. Скопируйте `Resto.Front.Console.exe` в папку с вашим плагином// Закрытие подключения (обычно не требуется)
### ❌ Не отображаются логиConsole.Shutdown();
**Решение:**```Консоль запускается автоматически при первом обращении к `Console.WriteLine`, она может быть запущена вручную:### 2. Запуск консоли мониторинга
1. Проверьте `Console.IsConnected` - должно быть `true`
2. Убедитесь, что используется `Console` из namespace `RestoFrontApiConsole`
3. Перезапустите консоль
## Форматирование сообщений
### ❌ Консоль "зависла"
**Решение:**
1. Закройте консоль (Ctrl+C)Консоль автоматически окрашивает сообщения в зависимости от их содержимого:```bashКонсоль запускается автоматически при первом обращении к `Console.WriteLine`, она может быть запущена вручную:
2. Запустите снова
3. Перезапустите плагин
## Примеры- `[ERROR]` - красный цветResto.Front.Console.exe
### Базовое логирование- `[WARN]` - желтый цвет
```csharp- `[INFO]` или `success` - зеленый цвет``````bash
using RestoFrontApiConsole;
using System;- `===` или `***` - голубой цвет
public class MyPluginResto.Front.Console.exe
{
public void Initialize()## Как устроено
{
Console.WriteLine("=== Инициализация плагина ===");### 3. Управление подключением```
tryПакет состоит из двух компонентов:
{
LoadSettings();
Console.WriteLine("[INFO] Настройки загружены");
1. **Resto.Front.Console.exe** - консольное приложение-сервер в папке `tools`, которое принимает подключения
ConnectToService();
Console.WriteLine("[INFO] Подключение установлено");2. **Console.cs** - клиентский код в папке `src`, который нужно добавить в ваш проект```csharp### 3. Управление подключением
Console.WriteLine("=== Плагин готов к работе ===");
}
catch (Exception ex)Взаимодействие происходит через Named Pipes (`IikoPluginConsole`).// Проверка статуса подключения
{
Console.WriteLine("[ERROR] Ошибка инициализации: {0}", ex.Message);
Console.WriteLine("[ERROR] StackTrace: {0}", ex.StackTrace);
throw;## Требованияif (Console.IsConnected)```csharp
}
}
}
```- .NET Framework 4.7.2 или выше{// Проверка статуса подключения
### Отладка операций- Windows (Named Pipes)
```csharp Console.WriteLine("Подключение активно");if (Console.IsConnected)
public void ProcessOrder(Order order)
{## Конфигурация
Console.WriteLine("*** Начало обработки заказа {0} ***", order.Id);
}{
var startTime = DateTime.Now;
По умолчанию используются следующие настройки:
try
{- Имя pipe: `IikoPluginConsole` Console.WriteLine("Подключение активно");
Console.WriteLine("[INFO] Валидация заказа...");
ValidateOrder(order);- Таймаут подключения: 2 секунды
Console.WriteLine("[INFO] Отправка в систему...");- Автоматический вывод цветных логов: включен// Закрытие подключения (обычно не требуется)}
SendToSystem(order);
var duration = DateTime.Now - startTime;
Console.WriteLine("[INFO] Заказ обработан за {0} мс", duration.TotalMilliseconds);## Решение проблемConsole.Shutdown();
}
catch (ValidationException ex)
{
Console.WriteLine("[WARN] Ошибка валидации: {0}", ex.Message);### Консоль не подключается```// Закрытие подключения (обычно не требуется)
}
catch (Exception ex)1. Убедитесь, что `Resto.Front.Console.exe` запущен ДО запуска вашего плагина
{
Console.WriteLine("[ERROR] Критическая ошибка: {0}", ex.Message);2. Проверьте, что используется правильное имя pipeConsole.Shutdown();
throw;
}3. Проверьте, что файл `Console.cs` добавлен в ваш проект
finally
{## Форматирование сообщений```
Console.WriteLine("*** Завершение обработки заказа {0} ***", order.Id);
}### Ошибка "Не удалось найти тип или имя пространства имен RestoFrontApiConsole"
}
```1. Убедитесь, что файл `Console.cs` скопирован из папки `src` пакета в ваш проект
## Миграция с версии 1.1.x2. Проверьте, что файл добавлен в проект через Solution Explorer
Если вы использовали предыдущую версию где нужно было копировать `Console.cs`:3. Убедитесь, что используете правильный namespaceКонсоль автоматически окрашивает сообщения в зависимости от их содержимого:## ?? ?????????????? ?????????
1. Удалите файл `Console.cs` из вашего проекта
2. Обновите пакет: `Update-Package Resto.Front.Api.Console`
3. Добавьте `using RestoFrontApiConsole;` (если не было)### Не отображаются логи
4. Пересоберите проект
1. Убедитесь, что консоль открыта и показывает "Waiting for plugin connection..."
Всё остальное работает как прежде!
2. Проверьте, что в коде вызывается `Console.WriteLine()` из RestoFrontApiConsole- `[ERROR]` - красный цвет??????? ????????????? ?????????? ????????? ? ??????????? ?? ?? ??????????:
## Содействие
3. Перезапустите консоль, если она "зависла"
Приветствуем вклад в проект! Пожалуйста:
- `[WARN]` - желтый цвет
1. Создайте форк проекта
2. Создайте ветку (`git checkout -b feature/AmazingFeature`)## Примеры
3. Закоммитьте изменения (`git commit -m 'Add AmazingFeature'`)
4. Отправьте в ветку (`git push origin feature/AmazingFeature`)- `[INFO]` или `success` - зеленый цвет- `[ERROR]` - ??????? ????
5. Откройте Pull Request
### Базовый пример логирования
## Лицензия
```csharp- `===` или `***` - голубой цвет- `[WARN]` - ?????? ????
MIT License - см. `LICENSE`
using RestoFrontApiConsole;
## Автор
using System;- `[INFO]` ??? `success` - ??????? ????
**Sardor Safarov** - [GitHub](https://github.com/skhsafarov)
## Ссылки
public class MyPlugin## Как устроено- `===` ??? `***` - ??????? ????
- 📦 [NuGet Package](https://www.nuget.org/packages/Resto.Front.Api.Console)
- 📂 [GitHub Repository](https://github.com/skhsafarov/Resto.Front.Api.Console){
- 📝 [Release Notes](https://github.com/skhsafarov/Resto.Front.Api.Console/releases)
public void Initialize()
---
{
⭐ Если проект был полезен, поставьте звезду на GitHub!
Console.WriteLine("=== Начало работы плагина ===");Пакет состоит из двух компонентов:## ??? ???????????
try
{
// Ваш код1. **Program.cs** - консольное приложение-сервер, которое принимает подключения от плагинов????? ??????? ?? ???? ???????????:
DoWork();
Console.WriteLine("[INFO] Операция выполнена успешно");2. **Console.cs** - клиентская библиотека, которая подключается к консоли и перенаправляет вывод
}
catch (Exception ex)1. **Program.cs** - ?????????? ??????????-??????, ??????? ????????? ??????????? ?? ????????
{
Console.WriteLine("[ERROR] Ошибка: {0}", ex.Message);Взаимодействие происходит через Named Pipes (`IikoPluginConsole`).2. **Console.cs** - ?????????? ??????????, ??????? ???????????? ? ??????? ? ?????????????? ?????
Console.WriteLine("[ERROR] StackTrace: {0}", ex.StackTrace);
}
finally
{## Требования?????????????? ?????????? ????? Named Pipes (`IikoPluginConsole`).
Console.WriteLine("=== Завершение работы плагина ===");
}
}
- .NET Framework 4.7.2 или выше## ?? ??????????
private void DoWork()
{- Windows (Named Pipes)
Console.WriteLine("[INFO] Выполнение работы...");
// ваша логика- .NET Framework 4.7.2 ??? ????
}
}## Конфигурация- Windows (Named Pipes)
Содействие
По умолчанию используются следующие настройки:## ?? ????????????
Мы приветствуем вклад в развитие проекта! Пожалуйста:
- Имя pipe:
IikoPluginConsole
Создайте форк проекта
Создайте ветку для новой функции (
git checkout -b feature/AmazingFeature)- Таймаут подключения: 2 секунды?? ????????? ???????????? ????????? ?????????:Закоммитьте изменения (
git commit -m 'Add some AmazingFeature')Отправьте в ветку (
git push origin feature/AmazingFeature)- Автоматический вывод цветных логов: включен- ??? pipe:IikoPluginConsoleОткройте Pull Request
- ??????? ???????????: 2 ???????
Лицензия
Решение проблем- ?????????????? ?????? ???????: ???????
Распространяется под лицензией MIT. См. LICENSE для дополнительной информации.
Автор
Консоль не запускается автоматически## ?? ?????????? ?????????
Sardor Safarov - GitHub
- Убедитесь, что
Resto.Front.Console.exeнаходится в той же директории, что и ваш плагин
Ссылки
- Запустите консоль вручную и повторите### ??????? ?? ??????????? ?????????????
Страница на NuGet1. ?????????, ???
Resto.Front.Console.exe????????? ? ??? ?? ??????????, ??? ? ??? ??????
---### Не отображаются логи2. ????????? ????? ??????? ? ?????
С благодарностью, если этот проект был полезен!1. Убедитесь, что консоль открыта и ожидает подключений
Проверьте, что используется правильное имя pipe### ?? ???????????? ????
?????????, ??? ??????? ???????? ? ??????? ???????????
Ошибки подключения2. ?????????, ??? ???????????? ?????????? ??? pipe
Убедитесь, что другие копии консоли корректно закрыты
Перезапустите консоль, если она "зависла"### ?????? ???????????
?????????, ??? ?????? ???? ??????? ???????? ????????????
Примеры2. ????????????? ???????, ???? ??? "???????"
Базовый пример логирования## ?? ???????
using RestoFrontApiConsole;### ??????? ?????? ???????????
```csharp
public class MyPluginusing RestoFrontApiConsole;
{
public void DoWork()public class MyPlugin
{{
Console.WriteLine("=== Начало работы плагина ==="); public void DoWork()
{
try Console.WriteLine("=== ?????? ?????? ??????? ===");
{
// Ваш код try
Console.WriteLine("[INFO] Операция выполнена успешно"); {
} // ??? ???
catch (Exception ex) Console.WriteLine("[INFO] ???????? ????????? ???????");
{ }
Console.WriteLine("[ERROR] Ошибка: {0}", ex.Message); catch (Exception ex)
} {
Console.WriteLine("[ERROR] ??????: {0}", ex.Message);
Console.WriteLine("=== Завершение работы плагина ==="); }
}
} Console.WriteLine("=== ?????????? ?????? ??????? ===");
``` }
}
## Содействие```
Мы приветствуем вклад в развитие проекта! Пожалуйста:## ?? ??????????
1. Создайте форк проекта?? ???????????? ????? ? ???????? ???????! ??????????:
2. Создайте ветку для новой функции (`git checkout -b feature/AmazingFeature`)
3. Закоммитьте изменения (`git commit -m 'Add some AmazingFeature'`)1. ???????? ???????????
4. Отправьте в ветку (`git push origin feature/AmazingFeature`)2. ???????? ????? ??? ????? ??????? (`git checkout -b feature/AmazingFeature`)
5. Откройте Pull Request3. ???????????? ????????? (`git commit -m 'Add some AmazingFeature'`)
4. ????????? ? ????? (`git push origin feature/AmazingFeature`)
## Лицензия5. ???????? Pull Request
Распространяется под лицензией MIT. См. `LICENSE` для дополнительной информации.## ?? ????????
## Автор???????????????? ??? ????????? MIT. ??. `LICENSE` ??? ?????????????? ??????????.
**Sardor Safarov** - [GitHub](https://github.com/skhsafarov)## ?? ?????
## Ссылки**Sardor Safarov** - [GitHub](https://github.com/skhsafarov)
- [Репозиторий на GitHub](https://github.com/skhsafarov/Resto.Front.Api.Console)## ?? ??????
- [Страница на NuGet](https://www.nuget.org/packages/Resto.Front.Api.Console)
- [??????????? ?? GitHub](https://github.com/skhsafarov/Resto.Front.Api.Console)
---- [???????? ?? NuGet](https://www.nuget.org/packages/Resto.Front.Api.Console)
С благодарностью, если этот проект был полезен!---
? ????????? ??????, ???? ???? ?????? ??? ???????!
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET Framework | net472 is compatible. net48 was computed. net481 was computed. |
-
.NETFramework 4.7.2
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Resto.Front.Api.Console:
| Package | Downloads |
|---|---|
|
Resto.Front.Api.Console.Client
Клиент для консольного логгера Resto Front API. Включает зависимость на основной пакет и исполняемый файл. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0 | 229 | 10/8/2025 |
| 1.2.8 | 218 | 10/8/2025 |
| 1.2.7 | 196 | 10/8/2025 |
| 1.2.6 | 214 | 10/8/2025 |
| 1.2.5 | 250 | 10/8/2025 |
| 1.2.4 | 284 | 10/8/2025 |
| 1.2.3 | 220 | 10/8/2025 |
| 1.2.2 | 220 | 10/8/2025 |
| 1.2.1 | 217 | 10/8/2025 |
| 1.2.0 | 218 | 10/8/2025 |
| 1.1.2 | 462 | 10/8/2025 |
| 1.1.1 | 465 | 10/8/2025 |
| 1.1.0 | 469 | 10/8/2025 |
| 1.0.0 | 469 | 10/8/2025 |
v1.2.2:
• Очищена структура проекта - удалены лишние файлы
• Документация вынесена на уровень решения
• Улучшена организация файлов
v1.2.1:
• Оптимизирована структура проекта
• Исправлены пути к библиотекам
• Улучшена стабильность пакета
v1.2.0:
• BREAKING CHANGE: Теперь пакет включает DLL библиотеку!
• Больше не нужно копировать исходный код - просто установите и используйте
• Добавлена Resto.Front.Api.Console.Client.dll в папку lib
• Улучшена документация для нового способа использования
v1.1.1:
• Добавлен README в пакет для NuGet Gallery
• Исправлена структура метаданных пакета
v1.1.0:
• Улучшена документация и README
• Добавлены примеры использования
• Исправлены мелкие баги в перенаправлении вывода
• Улучшена обработка ошибок подключения
v1.0.0:
• Первый релиз
• Базовая функциональность логирования через Named Pipes
• Цветное форматирование сообщений
• Автоматическое перенаправление Console.WriteLine