All Projects → lumigo-io → serverless-lumigo-plugin

lumigo-io / serverless-lumigo-plugin

Licence: Apache-2.0 license
Serverless monitoring and troubleshooting plugin to easily apply distributed tracing

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to serverless-lumigo-plugin

Tensor Sensor
The goal of this library is to generate more helpful exception messages for numpy/pytorch matrix algebra expressions.
Stars: ✭ 532 (+801.69%)
Mutual labels:  debugging, tracing
Google It Automation With Python
Repository to keep track of Google IT Automation with Python provided by Coursera
Stars: ✭ 86 (+45.76%)
Mutual labels:  debugging, troubleshooting
Ghostwheel
Hassle-free inline clojure.spec with semi-automatic generative testing and side effect detection
Stars: ✭ 556 (+842.37%)
Mutual labels:  debugging, tracing
Tapping device
TappingDevice makes objects tell you what they do, so you don't need to track them yourself.
Stars: ✭ 296 (+401.69%)
Mutual labels:  debugging, tracing
Elinux
嵌入式 Linux 知识库 (elinux.org) 中文翻译计划;本项目发起人发布了《360° 剖析 Linux ELF》视频课程,欢迎订阅:https://www.cctalk.com/m/group/88089283
Stars: ✭ 193 (+227.12%)
Mutual labels:  debugging, tracing
Icebox
Virtual Machine Introspection, Tracing & Debugging
Stars: ✭ 422 (+615.25%)
Mutual labels:  debugging, tracing
Bpf Map
Generic tool to inspect BPF maps
Stars: ✭ 38 (-35.59%)
Mutual labels:  debugging, troubleshooting
serverless-plugin-epsagon
Epsagon's plugin for Serverless Framework ⚡️
Stars: ✭ 53 (-10.17%)
Mutual labels:  lambda, tracing
Redbug
erlang tracing debugger
Stars: ✭ 159 (+169.49%)
Mutual labels:  debugging, tracing
Rexbug
A thin Elixir wrapper for the redbug Erlang tracing debugger.
Stars: ✭ 126 (+113.56%)
Mutual labels:  debugging, tracing
elixir-fire-brigade-workshop
Workshop "Join the Elixir Fire Brigade - Level-up Your Elixir Debugging Skills" (ElixirConf US 2017)
Stars: ✭ 14 (-76.27%)
Mutual labels:  debugging, tracing
SQLCallStackResolver
Utility to resolve SQL Server callstacks to their correct symbolic form using just PDBs and without a dump file
Stars: ✭ 55 (-6.78%)
Mutual labels:  debugging, troubleshooting
iopipe-go
Go agent for AWS Lambda metrics, tracing, profiling & analytics
Stars: ✭ 18 (-69.49%)
Mutual labels:  debugging, tracing
Re Frame 10x
A debugging dashboard for re-frame. X-ray vision as tooling.
Stars: ✭ 491 (+732.2%)
Mutual labels:  debugging, tracing
Aws Serverless Airline Booking
Airline Booking is a sample web application that provides Flight Search, Flight Payment, Flight Booking and Loyalty points including end-to-end testing, GraphQL and CI/CD. This web application was the theme of Build on Serverless Season 2 on AWS Twitch running from April 24th until end of August in 2019.
Stars: ✭ 1,290 (+2086.44%)
Mutual labels:  lambda, tracing
Epsagon Go
Automated tracing library for Go 1.x ⚡️
Stars: ✭ 24 (-59.32%)
Mutual labels:  debugging, lambda
Iopipe Js Core
Observe and develop serverless apps with confidence on AWS Lambda with Tracing, Metrics, Profiling, Monitoring, and more.
Stars: ✭ 123 (+108.47%)
Mutual labels:  debugging, lambda
iopipe-js
Build and run serverless apps with confidence on AWS Lambda with Tracing, Profiling, Metrics, Monitoring, and more.
Stars: ✭ 33 (-44.07%)
Mutual labels:  debugging, tracing
Postmortem
A simple debug library for Clojure(Script) that features data-oriented logging and tracing
Stars: ✭ 143 (+142.37%)
Mutual labels:  debugging, tracing
uptrace
Open source APM: OpenTelemetry traces, metrics, and logs
Stars: ✭ 1,187 (+1911.86%)
Mutual labels:  tracing

serverless-lumigo

serverless version License CircleCI codecov

Serverless framework plugin to auto-install the Lumigo tracer for Node.js and Python functions.

TOC

Install

Run npm install in your Serverless project.

$ npm install --save-dev serverless-lumigo

Add the plugin to your serverless.yml file

plugins:
  - serverless-lumigo

Node.js functions

For Node.js functions, the plugin would install the latest version of the Lumigo tracer for Node.js during serverless package and serverless deploy. It would also wrap your functions as well, so you only need to configure your Lumigo token in a custom section inside the serverless.yml.

For example:

provider:
  name: aws
  runtime: nodejs12.x

custom:
  lumigo:
    token: <YOUR TOKEN GOES HERE>
    nodePackageManager: <npm, pnpm or yarn>

In case you want to pin the specific tracer version use pinVersion attribute.

For example

provider:
  name: aws
  runtime: nodejs12.x

custom:
  lumigo:
    token: <YOUR TOKEN GOES HERE>
    pinVersion: 1.31.1

In case you want to manage the Lumigo tracer dependency yourself - e.g. you want to use Lerna or Webpack, and can't have this plugin install the Lumigo tracer on your behalf on every deployment - then you can also disable the NPM install process altogether.

provider:
  name: aws
  runtime: nodejs12.x

custom:
  lumigo:
    token: <YOUR TOKEN GOES HERE>
    skipInstallNodeTracer: true # defaults to false

In case you are using ES Modules for Lambda handlers.

provider:
  name: aws
  runtime: nodejs14.x

custom:
  lumigo:
    token: <YOUR TOKEN GOES HERE>
    nodeUseESModule: true
    nodeModuleFileExtension: js

Python functions

For Python functions, we recommend using the serverless-python-requirements plugin to help you manage your dependencies. You should have the following in your requirements.txt:

lumigo_tracer

This installs the Lumigo tracer for Python, and this plugin would wrap your functions during serverless package and serverless deploy.

You also need to configure the Lumigo token in a custom section in the serverless.yml.

provider:
  name: aws
  runtime: python3.7
custom:
  lumigo:
    token: <YOUR TOKEN GOES HERE>

In case you are not using requirements.txt to manage your requirements then you can add skipReqCheck and set it to true

custom:
  lumigo:
    token: 1234
    skipReqCheck: true

Configuration

In order to pass parameters to the tracer, just add them as keys to lumigo custom configuration. For example:

custom:
  lumigo:
    token: <YOUR TOKEN GOES HERE>
    step_function: true

Function Scope Configuration

You can configure lumigo behavior for individual functions as well -

  • enabled - Allows one to enable or disable lumigo for specific a specific function
    functions:
      foo:
        lumigo:
          enabled: false
    
      bar:
        lumigo:
          enabled: ${self:custom.enabledLumigo}

How to test

  • Run npm run test:all
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].