Skip to main content

dm_database_driver_log/
lib.rs

1//! DM(达梦)驱动日志解析库。
2//!
3//! 驱动日志是一行一个事件,常见形式如下:
4//!
5//! ```text
6//! [INFO - 2026-09-16 17:45:19.763] tid:119 - [worker] { conn-3, pstmt-854 } executeQuery(): rs-2216; [USED TIME]: 8.5ms; [EXEC_ID]: 19010657;
7//! ```
8//!
9//! 内置 JDBC 与 DM Provider 格式通过统一的 [`LogParserBuilder`] 自动识别。
10//! 其他驱动可以使用 [`advanced`] 命名空间中的通用格式引擎扩展。
11
12mod core;
13mod encoding;
14mod error;
15mod formats;
16#[cfg(any(feature = "jdbc", feature = "dm-provider"))]
17mod unified;
18
19pub use encoding::FileEncodingHint;
20pub use error::ParseError;
21#[cfg(any(feature = "jdbc", feature = "dm-provider"))]
22pub use unified::{
23    LogEvent, LogFormatKind, LogIterator, LogParser, LogParserBuilder, parse_bytes,
24    parse_bytes_with_encoding, parse_line,
25};
26
27/// 面向新增驱动格式的高级通用引擎 API。
28pub mod advanced {
29    pub use crate::core::{
30        LogFormat, LogIterator, LogParser, LogParserBuilder, LogRecord, RecordFraming,
31    };
32}
33
34#[cfg(feature = "dm-provider")]
35pub use formats::dm_provider::DmProviderEvent;
36#[cfg(feature = "jdbc")]
37pub use formats::jdbc::DriverLogEvent as JdbcEvent;