小编Unk*_*nts的帖子

如何在 AWS Cloud Watch Logs Insights 中运行组

我有 CWL 条目如下。为清楚起见,以 SQL 类型显示条目

Name City
1     Chicago
2     Wuhan
3     Chicago
4     Wuhan
5     Los Angeles
Run Code Online (Sandbox Code Playgroud)

现在我想低于输出

City         Count
Chicago        2
Wuhan          2
Los Angeles    1
Run Code Online (Sandbox Code Playgroud)

有没有办法可以GROUP BY在 CWL Insights 中运行。

伪查询

Select Count(*), City From {TableName} GROUP BY City
Run Code Online (Sandbox Code Playgroud)

amazon-cloudwatch amazon-cloudwatchlogs aws-cloudwatch-log-insights

9
推荐指数
1
解决办法
1万
查看次数

按多个值过滤 AWS CloudWatch 原始日志事件/AWS CLI

鉴于 CloudWatch 上的以下查询提取包含“entry 1456” (其中 1456 是一个 ID)的消息的日志,我应该如何扩展它以获取多个 ID,相应的 CLI 命令是什么?

fields  @message
| filter @message like "entry 1456"
| limit 10
Run Code Online (Sandbox Code Playgroud)

为了澄清,我想使用多个 ID 进行过滤,例如“像 1456|1257|879”。但不确定在这种情况下正则表达式的格式。

我假设相应的 CLI 命令将类似于:

aws logs filter-log-events 
--log-group-name group_name
--app
--filter-pattern ........
Run Code Online (Sandbox Code Playgroud)

只是想确定制定此方案的最佳方法。

logging amazon-web-services amazon-cloudwatch aws-cli aws-cloudwatch-log-insights

6
推荐指数
1
解决办法
3万
查看次数

SAS EG 4.1代码文件的路径

我正在使用SAS Enterprise Guide 4.1,我的项目包含大量代码.该代码在外部.sas文件中组织,主要是因为.egp文件是二进制和纯文本.sas文件使用git更好.

问题是SAS EG 4.1使用绝对路径来引用外部.sas文件,因此将项目移动到不同的PC会破坏对代码文件的引用(除非其他PC使用相同的目录结构).

有没有办法强制SAS EG 4.1使用相对路径(似乎SAS EG 4.3使用相对路径,但升级不是一个选项).如果没有,是否至少有一种轻松移动项目的聪明方法?

现在,每次我必须移动项目时,我都会将代码嵌入到项目中(这会破坏版本控制).另一种方法是删除项目中的所有引用并重新添加它们(这是很多工作).

sas relative-path absolute-path enterprise-guide

5
推荐指数
1
解决办法
1229
查看次数

我无法创建 CloudWatch 规则来使用 terraform 创建 SQS 消息

我正在尝试创建一条每分钟执行一次的 AWS CloudWatch 规则,以在 SQS 中创建消息。当我使用下面的 Terraform 脚本时,一切看起来都找到,但 SQS my_queue 没有收到任何消息。

使用 Amazon 控制台更新规则 my_trigger 时,将在 SQS 中创建消息。

provider "aws" {
  region = "eu-central-1"
}

resource "aws_sqs_queue" "this_sqs_queue" {
  name                        = "my_queue"
  fifo_queue                  = "false"
  content_based_deduplication = "false"
  visibility_timeout_seconds  = 30
  message_retention_seconds   = 345600
  max_message_size            = 262144
  receive_wait_time_seconds   = 0
  delay_seconds               = 0
}

resource "aws_cloudwatch_event_rule" "cloudwatch_event_rule" {
  name                = "my_trigger"
  schedule_expression = "rate(1 minute)"
}

resource "aws_cloudwatch_event_target" "cloudwatch_event_target" {
  rule       = "${aws_cloudwatch_event_rule.cloudwatch_event_rule.name}"
  arn        = "${aws_sqs_queue.this_sqs_queue.arn}"
}
Run Code Online (Sandbox Code Playgroud)

非常感谢任何帮助。

amazon-sqs amazon-web-services amazon-cloudwatch terraform

4
推荐指数
1
解决办法
1788
查看次数

AWS with .NET - 从 CloudWatch 读取日志 - 没有返回日志数据

我正在尝试使用 .NET 从 CloudWatch 读取使用 SNS 发送的消息的日志数据。

从 CloudWatch 控制台 (CloudWatch \ CloudWatch Logs \ Logs Insights),我输入:

Date range: custom (2w)
LogGroup: sns/ap...../8...../LogName 
Query: fields @timestamp, @message | sort @timestamp desc | limit 20
Run Code Online (Sandbox Code Playgroud)

它返回大量日志记录(@timestamp | @message)

我正在尝试使用 .net AWS SDK 从 c# 执行相同的操作:

public async Task GetLogs()
{
    string logGroupName = "sns/ap...../8...../LogName";

    AWSOptions options = configuration.GetAWSOptions();
    IAmazonCloudWatchLogs logs = options.CreateServiceClient<IAmazonCloudWatchLogs>();

    StartQueryRequest startQueryRequest = new StartQueryRequest();
    startQueryRequest.LogGroupName = logGroupName;
    startQueryRequest.StartTime = 1577850562; //1 Jan 2020
    TimeSpan t = DateTime.UtcNow - …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services .net-core amazon-cloudwatchlogs aws-cloudwatch-log-insights

2
推荐指数
1
解决办法
2863
查看次数