@aws-lambda-powertools/commons
Version:
A shared utility package for Powertools for AWS Lambda (TypeScript) libraries
78 lines • 2.83 kB
TypeScript
import type { ConfigServiceInterface } from '../types/ConfigServiceInterface.js';
/**
* This class is used to fetch environment variables that are available in the execution environment.
*
* These variables can be a mix of runtime environment variables set by AWS and
* other environment variables that are set by the developer to configure Powertools for AWS Lambda.
*
* @example
* ```typescript
* import { EnvironmentVariablesService } from '@aws-lambda-powertools/commons/';
*
* const config = new EnvironmentVariablesService();
* const serviceName = config.getServiceName();
* ```
*
* @see https://docs.powertools.aws.dev/lambda/typescript/latest/#environment-variables
*
* @class
*/
declare class EnvironmentVariablesService implements ConfigServiceInterface {
/**
* Increase JSON indentation for Logger to ease debugging when running functions locally or in a non-production environment
*/
protected devModeVariable: string;
/**
* Set service name used for tracing namespace, metrics dimension and structured logging
*/
protected serviceNameVariable: string;
/**
* AWS X-Ray Trace ID environment variable
* @private
*/
private xRayTraceIdVariable;
/**
* Get the value of an environment variable by name.
*
* @param {string} name The name of the environment variable to fetch.
*/
get(name: string): string;
/**
* Get the value of the `POWERTOOLS_SERVICE_NAME` environment variable.
*/
getServiceName(): string;
/**
* Get the value of the `_X_AMZN_TRACE_ID` environment variable.
*
* The AWS X-Ray Trace data available in the environment variable has this format:
* `Root=1-5759e988-bd862e3fe1be46a994272793;Parent=557abcec3ee5a047;Sampled=1`,
*
* The actual Trace ID is: `1-5759e988-bd862e3fe1be46a994272793`.
*/
getXrayTraceId(): string | undefined;
/**
* Determine if the current invocation is part of a sampled X-Ray trace.
*
* The AWS X-Ray Trace data available in the environment variable has this format:
* `Root=1-5759e988-bd862e3fe1be46a994272793;Parent=557abcec3ee5a047;Sampled=1`,
*/
getXrayTraceSampled(): boolean;
/**
* Determine if the current invocation is running in a development environment.
*/
isDevMode(): boolean;
/**
* Helper function to determine if a value is considered thruthy.
*
* @param value The value to check for truthiness.
*/
isValueTrue(value: string): boolean;
/**
* Helper function to determine if a value is considered falsy.
*
* @param value The value to check for falsiness.
*/
isValueFalse(value: string): boolean;
}
export { EnvironmentVariablesService };
//# sourceMappingURL=EnvironmentVariablesService.d.ts.map