@samtec-ash/virtuinlogging

0.9.15 • Public • Published

Virtuin Logo Virtuin Logging

Overview

Virtuin Logging is used to push logs to AWS CloudWatch to monitor all aspects of active test on workstation.

The logging service logs to two transports Console (stdout/stderr) and CloudWatch. There are 5 levels of logs:

  • error ( highest )
  • warn
  • info
  • debug
  • silly ( lowest )

By default, Console transport will be used for levels debug and up with debug and error going to stderr.
By default, CloudWatch transport will be used for levels info and up.

Development

Building

yarn run prepublish

Publishing

yarn publish

Usage

Prerequisites

# Install AWS cli
pip install awscli --upgrade --user

# Configure AWS
## Method 1: Prompt
aws configure
## Method 2: No Prompt
echo -ne '
[default]
aws_access_key_id = AWS_ACCESS_KEY_ID
aws_secret_access_key = AWS_SECRET_ACCESS_KEY
' > ~/.aws/credentials
echo -ne '
[default]
region = us-east-2
output = json
' > ~/.aws/config

Installation

# Add package to project
yarn add @samtec-ash/virtuinlogging

Example

es2016 w/ Async/await :
import { VirtuinLogger } from '@samtec-ash/VirtuinLogging';

const logger = new VirtuinLogger();
const config = {
  test: {
    testUUID: '123456789'  // Required
  },
  station: {
    name: 'StationDebug', // Required
    debug: true            // Optional
  },
  dut: {
    partNumber: 'P12345',  // Optional
    serialNumber: 'S12345' // Optional
  }
};

let success;
if (await logger.open(config)) {
  success = await logger.log('Connected to CloudWatch Logs!', 'info');
  success = await logger.log('Some warning message', 'warn');
  const status = logger.status();
  logger.clear();
  success = await logger.close();
  console.log("Done!");
}
es2015:
"use strict";

var _VirtuinLogging = require("@samtec-ash/VirtuinLogging");

var logger = new _VirtuinLogging.VirtuinLogger();

var config = {
  test: {
    testUUID: "123456789" // Required
  },
  station: {
    name: "debug_station", // Required
    debug: true // Optional
  },
  dut: {
    partNumber: "P12345", // Optional
    serialNumber: "S12345" // Optional
  }
};

Promise.resolve()
  .then(function() {
    return logger.open(config);
  })
  .then(function(rst) {
    return logger.log("Connected to CloudWatch Logs!");
  })
  .then(function(rst) {
    return logger.log("Some warning message", "warn");
  })
  .then(function(rst) {
    const status = logger.status();
    logger.clear();
    return logger.close();
  })
  .finally(function(rst) {
    console.log("Done!");
  });

API

The autogenerated API can be accessed in following mediums:

Readme

Keywords

none

Package Sidebar

Install

npm i @samtec-ash/virtuinlogging

Weekly Downloads

1

Version

0.9.15

License

MIT

Unpacked Size

22.5 kB

Total Files

18

Last publish

Collaborators

  • nelson_a_penn_samtec
  • julianlechner
  • nathanpage
  • adamtec
  • virtchris