Skip to main content

Getting Started


A Logger implementation that implements Sapphire's ILogger interface and implements timestamp and style formatting with the blazing fast colorette library.


npm install @sapphire/plugin-logger @sapphire/framework


This registers the necessary options and methods in the Sapphire client to be able to use the log plugin.

// Main bot file
// Be sure to register the plugin before instantiating the client.

In order to use the Logger in any place other than a piece (commands, arguments, preconditions, etc.), you must first import the container property of @sapphire/framework. For pieces, you can simply use this.container.logger to access Logger methods.

const { container } = require('@sapphire/framework');

class MyAwesomeService {
printAwesomeLog() {'log message');
module.exports = {

Here is an example ping command, demonstrating the use of this.container.logger from within a piece by omitting the explicit import.

// ping command

const { Command } = require('@sapphire/framework');

class PingCommand extends Command {
constructor(context, options) {
super(context, {
description: 'ping pong'

async messageRun(message) {
this.container.logger.warn('warning message');
module.exports = {

Types of logs

  1. trace
  2. debug
  3. info
  4. warn
  5. error
  6. fatal

Example: container.logger.debug('log debug message');