access_key_id() = string()
cw_host() = string()
error_result() = {error, Reason::term()}
events() = [#{message => binary(), timestamp => pos_integer()}]
filter_name_prefix() = string() | binary() | undefined
kms_key_id() = string() | binary() | undefined
limit() = pos_integer() | undefined
log_group() = jsx:json_term()
log_group_name() = string() | binary() | undefined
log_group_name_prefix() = string() | binary() | undefined
log_stream() = jsx:json_term()
log_stream_name() = string() | binary() | undefined
log_stream_order() = log_stream_name | last_event_time | undefined
log_stream_prefix() = string() | binary() | undefined
metric_filters() = jsx:json_term()
metric_name() = string() | binary() | undefined
metric_namespace() = string() | binary() | undefined
paging_token() = string() | binary() | undefined
query_results() = #{results := [[#{field := binary(), value := binary()}]], statistics := #{bytes_scanned := float(), records_matched := float(), records_scanned := float()}, status := query_status()}
query_status() = cancelled | complete | failed | running | scheduled | timeout | unknown
result_paged(ObjectType) = success_result_paged(ObjectType) | error_result()
secret_access_key() = string()
seq_token() = string() | binary() | undefined
success_result_paged(ObjectType) = {ok, [ObjectType], paging_token()}
tag() = {binary(), binary()}
tags_return() = {error, metadata_not_available | container_credentials_unavailable | erlcloud_aws:httpc_result_error()} | {ok, jsx:json_term()}
| 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 |
configure(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key()) -> ok
configure(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key(), Host::cw_host()) -> ok
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(LogGroupName::log_group_name(), Config::aws_config()) -> ok | error_result()
create_log_group(LogGroupName::log_group_name(), Tags::[tag()], Config::aws_config()) -> ok | error_result()
create_log_group(LogGroupName::log_group_name(), Tags::undefined | [tag()], KmsKeyId::undefined | kms_key_id(), Config::aws_config()) -> ok | error_result()
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(LogGroupName::log_group_name(), LogStreamName::log_stream_name(), Config::aws_config()) -> ok | error_result()
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(LogGroupName::log_group_name(), Config::aws_config()) -> ok | error_result()
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(LogGroupName::log_group_name(), LogStreamName::log_stream_name(), Config::aws_config()) -> ok | error_result()
describe_log_groups() -> result_paged(log_group())
DescribeLogGroups action http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeLogGroups.html
describe_log_groups(Aws_config::aws_config() | log_group_name_prefix()) -> result_paged(log_group())
describe_log_groups(LogGroupNamePrefix::log_group_name_prefix(), Config::aws_config()) -> result_paged(log_group())
describe_log_groups(LogGroupNamePrefix::log_group_name_prefix(), Limit::limit(), Config::aws_config()) -> result_paged(log_group())
describe_log_groups(LogGroupNamePrefix::log_group_name_prefix(), Limit::limit(), Token::paging_token(), Config::aws_config()) -> result_paged(log_group())
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(LogGroupName::log_group_name(), Config::aws_config()) -> result_paged(log_stream())
describe_log_streams(LogGroupName::log_group_name(), LogStreamPrefix::log_stream_prefix(), Config::aws_config()) -> result_paged(log_stream())
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(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(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() -> result_paged(metric_filters())
DescribeMetricFilters action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeMetricFilters.html
describe_metric_filters(Aws_config::aws_config() | log_group_name()) -> result_paged(metric_filters())
describe_metric_filters(LogGroupName::log_group_name(), Config::aws_config()) -> result_paged(metric_filters())
describe_metric_filters(LogGroupName::log_group_name(), Limit::limit(), Config::aws_config()) -> result_paged(metric_filters())
describe_metric_filters(LogGroupName::log_group_name(), Limit::limit(), FilterNamePrefix::filter_name_prefix(), Config::aws_config()) -> result_paged(metric_filters())
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(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(QueryId, Options) -> Results
QueryId = string()Options = [{out, map}]Results = {ok, query_results() | AWSAPIReturn} | {error, erlcloud_aws:httpc_result_error()}AWSAPIReturn = [{binary(), term()}]
GetQueryResults action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetQueryResults.html
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(QueryId, Options, Config) -> Results
QueryId = string()Options = [{out, map}]Config = aws_config()Results = {ok, query_results() | AWSAPIReturn} | {error, erlcloud_aws:httpc_result_error()}AWSAPIReturn = [{binary(), term()}]
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(LogGroup::log_group_name(), Config::aws_config()) -> tags_return()
new(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key()) -> aws_config()
new(AccessKeyID::access_key_id(), SecretAccessKey::secret_access_key(), Host::cw_host()) -> aws_config()
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
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(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(LogGroupNames, QueryString, StartTime, EndTime) -> Result
LogGroupNames = [log_group_name()]QueryString = string()StartTime = non_neg_integer()EndTime = non_neg_integer()Result = {ok, #{query_id => string()}} | {error, erlcloud_aws:httpc_result_error()}
StartQuery action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html
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(LogGroupNames, QueryString, StartTime, EndTime, Limit) -> Result
LogGroupNames = [log_group_name()]QueryString = string()StartTime = non_neg_integer()EndTime = non_neg_integer()Limit = 1..10000Result = {ok, #{query_id => string()}} | {error, erlcloud_aws:httpc_result_error()}
start_query(LogGroupNames, QueryString, StartTime, EndTime, Limit, Config) -> Result
LogGroupNames = [log_group_name()]QueryString = string()StartTime = non_neg_integer()EndTime = non_neg_integer()Limit = 1..10000Config = aws_config()Result = {ok, #{query_id => string()}} | {error, erlcloud_aws:httpc_result_error()}
stop_query(QueryId) -> Result
QueryId = string()Result = ok | {error, erlcloud_aws:httpc_result_error()}
StopQuery action https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StopQuery.html
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(QueryId, Config) -> Result
QueryId = string()Config = aws_config()Result = ok | {error, erlcloud_aws:httpc_result_error()}
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(LogGroup::log_group_name(), Tags::[tag()], Config::aws_config()) -> {ok, []} | {ok, jsx:json_term()} | {error, erlcloud_aws:httpc_result_error()}
Generated by EDoc