mackerel-lambda-extension-agent

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 14, 2022 License: MIT Imports: 18 Imported by: 0

README

mackerel-lambda-extension-agent

!! This is an experimental project. Please be careful when using in production. !!

mackerel-lambda-extension is a extension layer of AWS Lambda to monitor each Lambda runtime environment with Mackerel.

Each Lambda runtime environment is individually registered as a host on Mackerel, and the metrics are posted.

Usage

Registration

Add mackerel-lambda-extension-agent.zip file as a layer to the Lambda function you wish to monitor.

If you want to build it yourself, use the following command:

cd /path/to/mackerel-lambda-extension-agent
make build-extension
Settings

Specify the environment variables for the target Lambda function.

Either EXT_MACKEREL_API_KEY or EXT_MACKEREL_API_KEY_SSM must be specified.

Name Description
EXT_MACKEREL_API_KEY Mackerel API key. Read and write permission is required
EXT_MACKEREL_API_KEY_SSM Name of SSM parameter store where Mackerel API key is stored with encryption
EXT_MACKEREL_ROLE_FULL_NAMES Service and role to which hosts belong. The format is <service>:<role>,...,<service>:<role>.
EXT_LOG_LEVEL Select a log level from the following options: DEBUG, INFO, WARNING, ERROR. Default is WARNING
Example: Configuration by Terraform
locals {
   extension_file = "./mackerel-lambda-extension-agent.zip"
}

resource "aws_lambda_layer_version" "agent" {
  filename         = local.extension_file
  layer_name       = "mackerel-lambda-extension-agent"
  source_code_hash = filebase64sha256("local.extension_file")
}

resource "aws_lambda_function" "this" {
  function_name = "sample-function"

  ...

  layers = [aws_lambda_layer_version.agent.arn]

  environment {
    variables = {
      EXT_MACKEREL_API_KEY         = var.mackerel_api_key
      EXT_MACKEREL_ROLE_FULL_NAMES = "lambda:sample-function"
      EXT_LOG_LEVEL                = "DEBUG"
    }
  }
}

License

The source code is licensed MIT.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL