Retrieves diagnostic details of Akamai error reference numbers via Akamai's API


Keywords
akamai, error, diagnostics, hashref, #ref, reference, cdn, lookup, akamai-cli, cli, diagnostic-tool
License
MIT
Install
npm install akamai-error-lookup@1.1.1

Documentation

akamai-error-lookup

Version Codacy Badge Libraries.io dependency status for latest release Downloads Licence

Quick Start

  • Install globally using npm install -g akamai-error-lookup
  • Configure your Akamai API credentials in auth.edgerc
  • Run hashref [errorReference]

Output Example

Overview

A command line utility to lookup Akamai error reference numbers (e.g. Reference #18.2d351ab8.1557333295.a4e16ab).

If you work on a website hosted behind Akamai's CDN you will, on occasion, see an Akamai Reference # error number. These occur when Akamai catches an error, as opposed to the origin serving an error, such as a DNS resolution failure or an origin connection error.

In these scenarios Akamai reports an error reference number:

error - Service Unavailable - DNS failure

Using hashref you can lookup the details of the #Ref error number to diagnose the root cause of the error:

hashref 11.2e373217.1558103133.1dedf6b

usage example


Installation

npm install -g akamai-error-lookup

Configuration

You'll need to create an auth.edgerc file and configure it with your Akamai API credentials as described here.

You can save auth.edgerc in either the current directory or in the home directory (node -p require('os').homedir()).

Using the home directory means you can install the package globally and call hashref from any location.

If the auth.edgerc file is not found you'll receive the following error message:

auth file not found


Usage

hashref [errorReference] [options]


Options

--decode <true|false>            Enable or disable decoding of URLs and user-agent [true]
--no-color                       Switches off colour output
--version                        Display version number
--help                           Display this help

decode

By default all output will be decoded, so that fields such as user-agent and URL are more readable. Use --decode false to switch this off.

no-color

If your terminal has problems rendering the colour output then you can switch it off by using --no-color.

version

Prints out akamai-error-lookup's version number.

help

Displays the help screen.


Verbose output

The default terminal output contains a selective subset of the more salient fields returned by Akamai's API.

The full json response is automatically written to the operating system's default directory for temporary files (node -p require('os').tmpdir()). The location is displayed as part of the terminal output:

Writing full response to [C:\Users\foo\AppData\Local\Temp\11.2e373217.1558514903.f6c71e.json]

Note: On Linux systems this will be /tmp rather than /var/tmp which means these files will not persist a system reboot. If you want to retain them, copy them elsewhere.

Debugging

akamai-error-lookup uses the npm package debug. If you set the environment variable debug to hashref you'll see full debug output.

Windows

set debug=hashref
hashref [errorReference]

Linux

DEBUG=hashref hashref [errorReference]

Powershell

$env:debug="hashref"
node akamai-error-lookup [errorReference]

Changelog

[1.2.0] - Oct 12th 2019

Changed

  • Fixed path separators in absolute filename references to work across all platforms.

[1.1.1] - September 22nd 2019

Changed

  • Updated dependencies to include edgegrid 3.0.8

[1.1.0] - September 20th 2019

Added

  • New --decode option to enable or disable URI & HTML decoding.

Changed

  • Fixed decoding of URIs & HTML in console output.
  • Updated dependencies including edgegrid 3.0.7.

[1.0.2] - May 22nd 2019

Added

  • Allow auth.edgerc to be in either the current directory or in the home directory, which allows a global install to be called from any current working directory.

[1.0.0] - March 19th 2019

  • Initial Release.