Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: pkg/logging/lib/logging.dart

Issue 55853003: add useful docs for logging (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /** 5 /**
6 * Support for debugging and error logging. 6 * Support for logging.
7 *
8 * This library introduces abstractions similar to those used in other
9 * languages, such as the Closure JS Logger and java.util.logging.Logger.
10 * 7 *
11 * For information on installing and importing this library, see the 8 * For information on installing and importing this library, see the
12 * [logging package on pub.dartlang.org] 9 * [logging package on pub.dartlang.org]
13 * (http://pub.dartlang.org/packages/logging). 10 * (http://pub.dartlang.org/packages/logging).
11 *
12 * ## Initializing
13 *
14 * By default, the logging package does not do anything useful with the
15 * log messages. You must configure the logging level and add a handler
16 * for the log messages.
17 *
18 * Here is a simple logging configuration that logs all messages
19 * via `print`.
20 *
21 * Logger.root.level = Level.ALL;
22 * Logger.root.onRecord.listen((LogRecord logRecord) {
23 * StringBuffer sb = new StringBuffer()
kevmoo-old 2013/11/01 17:49:19 Maybe use a format string? The StingBuffer is pret
24 * ..write(logRecord.time.toString())..write(":")
25 * ..write(logRecord.loggerName)..write(":")
26 * ..write(logRecord.level.name)..write(":")
27 * ..write(logRecord.sequenceNumber)..write(": ")
28 * ..write(logRecord.message.toString());
29 * print(sb.toString());
30 * });
31 *
32 * First, set the root [Level]. All messages at or above the level are
33 * sent to the [onRecord] stream.
34 *
35 * Then, listen on the [onRecord] stream for [LogRecord] events.
36 *
37 * ## Logging messages
38 *
39 * Create a [Logger] with a unique name to easily identify the source
40 * of the log messages.
41 *
42 * final Logger log = new Logger('MyClassName');
43 *
44 * Here is an example of logging a debug message and an error:
45 *
46 * Future future = doSomethingAsync();
47 * future.then((result) {
48 * log.fine('Got the result: $result');
49 * processResult(result);
50 * })
51 * .catchError((e, stackTrace) => log.severe('Oh noes!', e, stackTrace));
52 *
53 * See the [Logger] class for the different logging methods.
14 */ 54 */
15 library logging; 55 library logging;
16 56
17 import 'dart:async'; 57 import 'dart:async';
18 import 'package:unmodifiable_collection/unmodifiable_collection.dart'; 58 import 'package:unmodifiable_collection/unmodifiable_collection.dart';
19 59
20 /** 60 /**
21 * Whether to allow fine-grain logging and configuration of loggers in a 61 * Whether to allow fine-grain logging and configuration of loggers in a
22 * hierarchy. When false, all logging is merged in the root logger. 62 * hierarchy. When false, all logging is merged in the root logger.
23 */ 63 */
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 /** Associated stackTrace (if any) when recording errors messages. */ 351 /** Associated stackTrace (if any) when recording errors messages. */
312 final StackTrace stackTrace; 352 final StackTrace stackTrace;
313 353
314 LogRecord(this.level, this.message, this.loggerName, [this.error, 354 LogRecord(this.level, this.message, this.loggerName, [this.error,
315 this.stackTrace]) 355 this.stackTrace])
316 : time = new DateTime.now(), 356 : time = new DateTime.now(),
317 sequenceNumber = LogRecord._nextNumber++; 357 sequenceNumber = LogRecord._nextNumber++;
318 358
319 String toString() => '[${level.name}] $loggerName: $message'; 359 String toString() => '[${level.name}] $loggerName: $message';
320 } 360 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698