@nitra/consola
Version:
consola with filename
98 lines (66 loc) • 3.11 kB
Markdown
# @nitra/consola
[](https://github.com/marketplace/actions/super-linter)
[](https://badge.fury.io/js/%40nitra%2Fconsola)
## Show filename in console
Check security header in Cloud Functions
```JavaScript
import { createLogger } from '@nitra/consola'
const consola = createLogger(import.meta.url)
consola.debug('TEST')
```
## Show filename in console (browser version)
Check security header in Cloud Functions
```JavaScript
import { createLogger } from '@nitra/consola/browser'
const consola = createLogger(import.meta.url)
consola.debug('TEST')
```
## "Classic" consola
without filename
```JavaScript
import consola from '@nitra/consola'
consola.debug('TEST')
```
## OpenTelemetry експорт
Експорт логів до OpenTelemetry Collector через HTTP (працює тільки у Vite проектах)
### Автоматичне налаштування через змінні середовища Vite
Додайте змінні середовища у файл `.env` або `.env.local` з префіксом `VITE_`:
```bash
# Endpoint OpenTelemetry Collector
VITE_OTEL_EXPORTER_OTLP_LOGS_ENDPOINT=http://localhost:4318/v1/logs
# Ім'я сервісу
VITE_OTEL_SERVICE_NAME=my-app
# Версія сервісу
VITE_OTEL_SERVICE_VERSION=1.0.0
# Розмір батча (опціонально, за замовчуванням: 10)
VITE_OTEL_BATCH_SIZE=10
# Інтервал автоматичної відправки в мс (опціонально, за замовчуванням: 5000)
VITE_OTEL_FLUSH_INTERVAL=5000
```
### Ручне налаштування
```JavaScript
import { createLogger, createOpenTelemetryReporter } from '@nitra/consola'
const consola = createLogger(import.meta.url)
// Створюємо OpenTelemetry репортер
const otelReporter = createOpenTelemetryReporter({
endpoint: 'http://localhost:4318/v1/logs',
serviceName: 'my-app',
serviceVersion: '1.0.0',
batchSize: 10, // Розмір батча для відправки
flushInterval: 5000, // Інтервал автоматичної відправки в мс
headers: { // Додаткові HTTP заголовки (опціонально)
'Authorization': 'Bearer token'
}
})
// Додаємо репортер до логера
consola.addReporter(otelReporter)
// Тепер всі логи будуть експортуватися до OpenTelemetry Collector
consola.info('Цей лог буде відправлено до OpenTelemetry')
consola.error('Помилка також буде експортована')
```
### Формат даних
Логи експортуються у форматі OTLP (OpenTelemetry Logs Protocol) і містять:
- Тип логу (severity)
- Повідомлення
- Інформацію про файл та рядок (якщо доступна)
- Метадані сервісу (service.name, service.version)