#iot #scada #api-bindings

rsiot-logging

Настройка логгирования

22 releases

0.0.62 Feb 23, 2024
0.0.61 Feb 22, 2024
0.0.40 Jan 24, 2024
0.0.26 Dec 29, 2023

#1241 in GUI

MIT/Apache

10KB
84 lines

Настройки логгирования для разных платформ.

Для настройки логгирования нужно задать переменную RUST_LOG.

Способы задания RUST_LOG

Запуск в контейнере

В файле docker-compose.yaml для сервиса указать:

services:
  rust_service:
    environment:
      - RUST_LOG=info

Значение переменной можно задавать для каждого сервиса оданиково.

Запуск в контейнере, сохранение в файле .env

В файле docker-compose.yaml для сервиса указать:

services:
  rust_service:
    env_file: .env

Значение переменной будет одинаково для всех сервисов

Задание в compile-time

Платформы WASM, ESP не могут считывать переменные окружения, поэтому значение необходимо прописывать на этапе компиляции.

Чтобы значение переменной считывалось из файла:

  • создать файл .env в корне проекта
  • прописать в файле переменную в виде RUST_LOG = info
  • если изменить только переменную, без изменения кода, то перекомпиляции не будет. Поэтому можно создать файл build.rs в корне проекта с содержимым:
pub fn main() {
    println!("cargo:rerun-if-changed=.env");
}

TODO - Примеры задания переменной RUST_LOG

Dependencies

~12–24MB
~349K SLoC