Module erlcloud_cloudwatch_logs

Data Types

access_key_id()

access_key_id() = string()

cw_host()

cw_host() = string()

error_result()

error_result() = {error, Reason::term()}

events()

events() = [#{message => binary(), timestamp => pos_integer()}]

filter_name_prefix()

filter_name_prefix() = string() | binary() | undefined

kms_key_id()

kms_key_id() = string() | binary() | undefined

limit()

limit() = pos_integer() | undefined

log_group()

log_group() = jsx:json_term()

log_group_name()

log_group_name() = string() | binary() | undefined

log_group_name_prefix()

log_group_name_prefix() = string() | binary() | undefined

log_stream()

log_stream() = jsx:json_term()

log_stream_name()

log_stream_name() = string() | binary() | undefined

log_stream_order()

log_stream_order() = log_stream_name | last_event_time | undefined

log_stream_prefix()

log_stream_prefix() = string() | binary() | undefined

metric_filters()

metric_filters() = jsx:json_term()

metric_name()

metric_name() = string() | binary() | undefined

metric_namespace()

metric_namespace() = string() | binary() | undefined

paging_token()

paging_token() = string() | binary() | undefined

query_results()

query_results() = #{results := [[#{field := binary(), value := binary()}]], statistics := #{bytes_scanned := float(), records_matched := float(), records_scanned := float()}, status := query_status()}

query_status()

query_status() = cancelled | complete | failed | running | scheduled | timeout | unknown

result_paged()

result_paged(ObjectType) = success_result_paged(ObjectType) | error_result()

secret_access_key()

secret_access_key() = string()

seq_token()

seq_token() = string() | binary() | undefined

success_result_paged()

success_result_paged(ObjectType) = {ok, [ObjectType], paging_token()}

tag()

tag() = {binary(), binary()}

tags_return()

tags_return() = {error, metadata_not_available | container_credentials_unavailable | erlcloud_aws:httpc_result_error()} | {ok, jsx:json_term()}

Function Index

configure/2
configure/3
create_log_group/1 CreateLogGroup action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogGroup.html.
create_log_group/2
create_log_group/3
create_log_group/4
create_log_stream/2 CreateLogStream action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogStream.html.
create_log_stream/3
delete_log_group/1 DeleteLogGroup action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteLogGroup.html.
delete_log_group/2
delete_log_stream/2 DeleteLogStream action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteLogStream.html.
delete_log_stream/3
describe_log_groups/0 DescribeLogGroups action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeLogGroups.html.
describe_log_groups/1
describe_log_groups/2
describe_log_groups/3
describe_log_groups/4
describe_log_streams/1 DescribeLogStreams action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeLogStreams.html.
describe_log_streams/2
describe_log_streams/3
describe_log_streams/5
describe_log_streams/6
describe_log_streams/7
describe_metric_filters/0 DescribeMetricFilters action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeMetricFilters.html.
describe_metric_filters/1
describe_metric_filters/2
describe_metric_filters/3
describe_metric_filters/4
describe_metric_filters/6
describe_metric_filters/7
get_query_results/2.
get_query_results/3
list_tags_log_group/1 ListTagsLogGroup https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsLogGroup.html.
list_tags_log_group/2
new/2
new/3
put_logs_events/4.
put_logs_events/5
start_query/4.
start_query/5
start_query/6
stop_query/1.
stop_query/2
tag_log_group/2 TagLogGroup action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_TagLogGroup.html.
tag_log_group/3

Function Details

configure/2

configure(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key()) -> ok

configure/3

configure(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key(), Host::cw_host()) -> ok

create_log_group/1

create_log_group(LogGroupName::log_group_name()) -> ok | error_result()

CreateLogGroup action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogGroup.html

create_log_group/2

create_log_group(LogGroupName::log_group_name(), Config::aws_config()) -> ok | error_result()

create_log_group/3

create_log_group(LogGroupName::log_group_name(), Tags::[tag()], Config::aws_config()) -> ok | error_result()

create_log_group/4

create_log_group(LogGroupName::log_group_name(), Tags::undefined | [tag()], KmsKeyId::undefined | kms_key_id(), Config::aws_config()) -> ok | error_result()

create_log_stream/2

create_log_stream(LogGroupName::log_group_name(), LogStreamName::log_stream_name()) -> ok | error_result()

CreateLogStream action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogStream.html

create_log_stream/3

create_log_stream(LogGroupName::log_group_name(), LogStreamName::log_stream_name(), Config::aws_config()) -> ok | error_result()

delete_log_group/1

delete_log_group(LogGroupName::log_group_name()) -> ok | error_result()

DeleteLogGroup action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteLogGroup.html

delete_log_group/2

delete_log_group(LogGroupName::log_group_name(), Config::aws_config()) -> ok | error_result()

delete_log_stream/2

delete_log_stream(LogGroupName::log_group_name(), LogStreamName::log_stream_name()) -> ok | error_result()

DeleteLogStream action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteLogStream.html

delete_log_stream/3

delete_log_stream(LogGroupName::log_group_name(), LogStreamName::log_stream_name(), Config::aws_config()) -> ok | error_result()

describe_log_groups/0

describe_log_groups() -> result_paged(log_group())

DescribeLogGroups action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeLogGroups.html

describe_log_groups/1

describe_log_groups(Aws_config::aws_config() | log_group_name_prefix()) -> result_paged(log_group())

describe_log_groups/2

describe_log_groups(LogGroupNamePrefix::log_group_name_prefix(), Config::aws_config()) -> result_paged(log_group())

describe_log_groups/3

describe_log_groups(LogGroupNamePrefix::log_group_name_prefix(), Limit::limit(), Config::aws_config()) -> result_paged(log_group())

describe_log_groups/4

describe_log_groups(LogGroupNamePrefix::log_group_name_prefix(), Limit::limit(), Token::paging_token(), Config::aws_config()) -> result_paged(log_group())

describe_log_streams/1

describe_log_streams(LogGroupName::log_group_name()) -> result_paged(log_stream())

DescribeLogStreams action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeLogStreams.html

describe_log_streams/2

describe_log_streams(LogGroupName::log_group_name(), Config::aws_config()) -> result_paged(log_stream())

describe_log_streams/3

describe_log_streams(LogGroupName::log_group_name(), LogStreamPrefix::log_stream_prefix(), Config::aws_config()) -> result_paged(log_stream())

describe_log_streams/5

describe_log_streams(LogGroupName::log_group_name(), LogStreamPrefix::log_stream_prefix(), OrderBy::log_stream_order(), Desc::boolean(), Config::aws_config()) -> result_paged(log_stream())

describe_log_streams/6

describe_log_streams(LogGroupName::log_group_name(), LogStreamPrefix::log_stream_prefix(), OrderBy::log_stream_order(), Desc::boolean(), Limit::limit(), Config::aws_config()) -> result_paged(log_stream())

describe_log_streams/7

describe_log_streams(LogGroupName::log_group_name(), LogStreamPrefix::log_stream_prefix(), OrderBy::log_stream_order(), Desc::boolean(), Limit::limit(), Token::paging_token(), Config::aws_config()) -> result_paged(log_stream())

describe_metric_filters/0

describe_metric_filters() -> result_paged(metric_filters())

DescribeMetricFilters action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeMetricFilters.html

describe_metric_filters/1

describe_metric_filters(Aws_config::aws_config() | log_group_name()) -> result_paged(metric_filters())

describe_metric_filters/2

describe_metric_filters(LogGroupName::log_group_name(), Config::aws_config()) -> result_paged(metric_filters())

describe_metric_filters/3

describe_metric_filters(LogGroupName::log_group_name(), Limit::limit(), Config::aws_config()) -> result_paged(metric_filters())

describe_metric_filters/4

describe_metric_filters(LogGroupName::log_group_name(), Limit::limit(), FilterNamePrefix::filter_name_prefix(), Config::aws_config()) -> result_paged(metric_filters())

describe_metric_filters/6

describe_metric_filters(LogGroupName::log_group_name(), Limit::limit(), FilterNamePrefix::filter_name_prefix(), MetricName::metric_name(), MetricNamespace::metric_namespace(), Config::aws_config()) -> result_paged(metric_filters())

describe_metric_filters/7

describe_metric_filters(LogGroupName::log_group_name(), Limit::limit(), FilterNamePrefix::filter_name_prefix(), MetricName::metric_name(), MetricNamespace::metric_namespace(), PrevToken::paging_token(), Config::aws_config()) -> result_paged(metric_filters())

get_query_results/2

get_query_results(QueryId, Options) -> Results

GetQueryResults action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetQueryResults.html

Example

Returns the results from the specified query.

application:ensure_all_started(erlcloud). {ok, Config} = erlcloud_aws:auto_config(). {ok, Results} = erlcloud_cloudwatch_logs:get_query_results("12ab3456-12ab-123a-789e-1234567890ab", [], Config).

get_query_results/3

get_query_results(QueryId, Options, Config) -> Results

list_tags_log_group/1

list_tags_log_group(LogGroup::log_group_name()) -> tags_return()

ListTagsLogGroup https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsLogGroup.html

list_tags_log_group/2

list_tags_log_group(LogGroup::log_group_name(), Config::aws_config()) -> tags_return()

new/2

new(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key()) -> aws_config()

new/3

new(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key(), Host::cw_host()) -> aws_config()

put_logs_events/4

put_logs_events(LogGroup::log_group_name(), LogStream::log_stream_name(), SeqToken::seq_token(), Events::events()) -> {ok, seq_token()} | {error, erlcloud_aws:httpc_result_error()}

PutLogEvents action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutLogEvents.html

Example

Put log events requires a Upload Sequence Token, it is available via DescribeLogStreams

application:ensure_all_started(erlcloud). {ok, Config} = erlcloud_aws:auto_config(). {ok, Streams, _} = erlcloud_cloudwatch_logs:describe_log_streams(GroupName, StreamName, Config). {_, Seq} = lists:keyfind(<<"uploadSequenceToken">>, 1, hd(Streams)). Batch = [#{timestamp => 1526233086694, message => <<"Example Message">>}]. erlcloud_cloudwatch_logs:put_logs_events(GroupName, StreamName, Seq, Batch, Config).

put_logs_events/5

put_logs_events(LogGroup::log_group_name(), LogStream::log_stream_name(), SeqToken::seq_token(), Events::events(), Config::aws_config()) -> {ok, seq_token()} | {error, erlcloud_aws:httpc_result_error()}

start_query/4

start_query(LogGroupNames, QueryString, StartTime, EndTime) -> Result

StartQuery action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html

Example

Schedules a query of log groups using CloudWatch Logs Insights. You specify the log groups and time range to query, as well as the query string to use.

{ok, _} = application:ensure_all_started(erlcloud). {ok, Config} = erlcloud_aws:auto_config(). {ok, #{ query_id := QueryId }} = erlcloud_cloudwatch_logs:start_query(["LogGroupName1", "LogGroupName2", "LogGroupName3"], "stats count(*) by eventSource, eventName, awsRegion", 1546300800, 1546309800, 100).

start_query/5

start_query(LogGroupNames, QueryString, StartTime, EndTime, Limit) -> Result

start_query/6

start_query(LogGroupNames, QueryString, StartTime, EndTime, Limit, Config) -> Result

stop_query/1

stop_query(QueryId) -> Result

StopQuery action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StopQuery.html

Example

Stops a CloudWatch Logs Insights query that is in progress.

{ok, _} = application:ensure_all_started(erlcloud). {ok, Config} = erlcloud_aws:auto_config(). {ok, QueryId} = erlcloud_cloudwatch_logs:stop_query("ecef5848-8aa7-4c12-9665-bafe422f3247").

stop_query/2

stop_query(QueryId, Config) -> Result

tag_log_group/2

tag_log_group(LogGroup::log_group_name(), Tags::[tag()]) -> {ok, []} | {ok, jsx:json_term()} | {error, erlcloud_aws:httpc_result_error()}

TagLogGroup action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_TagLogGroup.html

tag_log_group/3

tag_log_group(LogGroup::log_group_name(), Tags::[tag()], Config::aws_config()) -> {ok, []} | {ok, jsx:json_term()} | {error, erlcloud_aws:httpc_result_error()}


Generated by EDoc