1.0.0 • Published 8 months ago

@effect-aws/client-cloudwatch-logs v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
8 months ago

@effect-aws/client-cloudwatch-logs

npm version npm downloads

Installation

npm install --save @effect-aws/client-cloudwatch-logs

Usage

With default CloudWatchLogsClient instance:

import { CloudWatchLogsService, DefaultCloudWatchLogsServiceLayer } from "@effect-aws/client-cloudwatch-logs";

const program = CloudWatchLogsService.describeLogGroups(args);

const result = pipe(
  program,
  Effect.provide(DefaultCloudWatchLogsServiceLayer),
  Effect.runPromise,
);

With custom CloudWatchLogsClient instance:

import {
  CloudWatchLogsService,
  BaseCloudWatchLogsServiceLayer,
  CloudWatchLogsClientInstance,
} from "@effect-aws/client-cloudwatch-logs";

const program = CloudWatchLogsService.describeLogGroups(args);

const CloudWatchLogsClientInstanceLayer = Layer.succeed(
  CloudWatchLogsClientInstance,
  new CloudWatchLogsClient({ region: "eu-central-1" }),
);

const result = await pipe(
  program,
  Effect.provide(BaseCloudWatchLogsServiceLayer),
  Effect.provide(CloudWatchLogsClientInstanceLayer),
  Effect.runPromise,
);

With custom CloudWatchLogsClient configuration:

import {
  CloudWatchLogsService,
  BaseCloudWatchLogsServiceLayer,
  DefaultCloudWatchLogsClientConfigLayer,
  CloudWatchLogsClientInstance,
  CloudWatchLogsClientInstanceConfig,
} from "@effect-aws/client-cloudwatch-logs";

const program = CloudWatchLogsService.describeLogGroups(args);

const CloudWatchLogsClientInstanceLayer = Layer.provide(
  Layer.effect(
    CloudWatchLogsClientInstance,
    CloudWatchLogsClientInstanceConfig.pipe(
      Effect.map(
        (config) => new CloudWatchLogsClient({ ...config, region: "eu-central-1" }),
      ),
    ),
  ),
  DefaultCloudWatchLogsClientConfigLayer,
);

const result = await pipe(
  program,
  Effect.provide(BaseCloudWatchLogsServiceLayer),
  Effect.provide(CloudWatchLogsClientInstanceLayer),
  Effect.runPromiseExit,
);

or map over DefaultCloudWatchLogsClientConfigLayer layer context and update the configuration...

1.0.0

8 months ago