node package manager
Easy collaboration. Discover, share, and reuse code in your team. Create a free org »

ehealth-winston-azure-blob-transport

winston-azure-blob-transport

NPM version

A Windows Azure blob storage transport for winston.

Credit

NOTE: This is a fork of https://github.com/Parsimotion/winston-azure-blob-transport, 99% of the code in this repository was written by user Parsimotion on github. This fork simply adds the ability to specify a max file size.

Installation

  $ npm install winston
  $ npm install ehealth-winston-azure-blob-transport

Usage

  var winston = require("winston");
  require("winston-azure-blob-transport");
 
  var logger = new (winston.Logger)({
    transports: [
      new (winston.transports.AzureBlob)({
        account: {
          name: "Azure storage account sub domain ([A-Za-z0-9])",
          key: "The long Azure storage secret key"
        },
        containerName: "A container name",
        blobName: "The name of the blob",
        level: "info"
      })
    ]
  });
  
  logger.warn("Hello!");

The Azure transport accepts the following options:

  • level: Level of messages that this transport should log (defaults to info).
  • account.name: The name of the Windows Azure storage account to use
  • account.key: The access key used to authenticate into this storage account
  • blobName: The name of the blob to log.
  • containerName: The container which will contain the logs.
  • maxBlobSize: The size in MB when a new blob file should be created. Note that the file size may go over the max size. But a new one will be created within one hour of exceeding the max.
  • maxBlockCount: How many commited blobs should be written before a new blob is created. Note that currently azure has a maximum of 50000 before errors are thrown. The default value in this module is 48000