搜索插件、代码仓与 APP 分类

插件详情v1.11.0

simple_logger

提供超简单的日志记录API。通过将 includeCallerInfo 设置为 true,日志中还会包含调用者信息。在 Android Studio 中,点击日志即可跳转到调用位置。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
1.3万
喜欢数
100
Pub 分数
160

安装插件

flutter pub add simple_logger

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

Simple_logger 是一个轻量级的 Flutter/Dart 包,提供简单直接的日志功能,设置极为简便。它支持详细的日志输出,启用后可包含调用者信息,有助于追踪日志来源。在 Android Studio 中,开发者可以通过点击日志条目直接跳转到源代码位置。该包可在所有主要平台——Android、iOS、Web、macOS、Windows 和 Linux——上运行,非常适合多平台应用中的一致性调试。其简洁性以及与开发工具的集成,显著提升了应用开发和故障排查过程中的生产力。

适合场景

  • 调试应用程序流程
  • 跟踪运行时错误
  • 监控状态变化
  • 跨平台日志记录
  • 快速集成到现有项目中

主要特点

  • 最小 API 表面
  • 调用方信息包含
  • IDE 导航支持
  • 多平台兼容性
  • 轻松设置
  • 格式化的日志输出

适合对象

  • 初级开发者
  • 快速原型设计
  • 团队调试工作流程
  • 小型到中型应用
  • 开发环境

使用建议

  • 不适用于生产级别的结构化日志记录
  • 有限的自定义选项
  • 默认情况下不进行日志级别过滤
  • 不支持外部日志存储
  • 无内置的日志轮转或持久化

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

simple_logger

Provides super simple APIs for logging. The log also includes caller info by setting includeCallerInfo to true. On Android Studio, jump to caller info by clicking the log.

Usage

// Singleton (factory)
final logger = SimpleLogger();

// Printed without called location
logger.info('Hello info!');
// -> 👻 INFO  2018-12-16 21:46:20.092695 [caller info not available] Hello info!

// Printed function which returns object
logger.info(() => 'Hello info!');
// -> 👻 INFO  2018-12-16 21:46:20.092695 [caller info not available] Hello info!

logger.setLevel(Level.WARNING);

// Not printed
logger.info('Hello info!');

// Printed
logger.warning('Hello warning!');
// -> ⚠️ WARNING  2018-12-16 21:46:20.101114 [caller info not available] Hello warning!

logger.shout('Hello shout!');
// -> 😡 SHOUT  2018-12-16 21:46:20.101308 [caller info not available] Hello shout!

logger.setLevel(
  Level.INFO,
  // Includes  caller info, but this is expensive.
  includeCallerInfo: true,
);

// Printed with called location
logger.info('Hello info!');
// -> 👻 INFO  2018-12-16 21:50:03.562583 [example/simple_logger_example.dart 29:10 in main] Hello info!

// Customize level prefix
logger.levelPrefixes = {};
logger.info('Hello info!');
// -> INFO  2018-12-16 21:50:03.562583 [example/simple_logger_example.dart 29:10 in main] Hello info!

logger.formatter = (info) => 'Customized output: (${info.message})';
logger.info('Hello info!');
// -> Customized output: (Hello info!)

logger.onLogged = (info) => print('Insert your logic with $info');
logger.info('Hello info!');
// -> Customized output: (Hello info!)
// -> Insert your logic with Instance of 'LogInfo'

Technical Articles

Features and bugs

Please file feature requests and bugs at the issue tracker.

所属分类

依赖

依赖清单 2 项

源码仓库

使用此插件的项目