是否可以重命名 AWS CloudWatch 日志组?

Is it possible to rename an AWS CloudWatch Log Group?

我创建了一个 AWS CloudWatch 日志组,其名称不太适合未来。是否可以重命名这样的日志组?我找不到通过 CloudWatch 控制台执行此操作的选项。

我想另一种方法是导出日志组的内容,使用所需的名称创建一个新的日志组,然后将导出的日志重新使用到新的日志组。不过,我宁愿避免这种方法,因为(除了乏味之外)这会重置日志组中所有日志事件的 ingestionTime

目前似乎不可能。 AWS CLI 目前仅列出以下 log-group 相关操作:

  • 创建日志组
  • 删除日志组
  • 描述日志组
  • 列表标签日志组
  • 标签日志组
  • 取消标记日志组

我的解决方案是:

由于日志组最近才创建并且所有原始日志文件仍在 EC2 实例上
  1. 使用 $ /etc/init.d/awslogs stop 停止 EC2 实例上的 CloudWatch Logs 代理。
  2. 确保应用程序当前不在 EC2 实例上 running/logging
  3. 删除 CloudWatch 上的现有日志组
  4. 将现有日志文件移出 EC2 实例上的预期目录
  5. 编辑 EC2 实例上的文件 /var/awslogs/etc/awslogs.conf 以指定所需的日志组名称而不是之前的名称。
  6. 使用 $ /etc/init.d/awslogs start 在 EC2 实例上启动 CloudWatch Logs 代理。
  7. 将每个日志文件移回 EC2 实例上的预期目录,一次一个,从最早到最新(根据文件修改时间),因此日志代理将处理所有这些文件(并且不仅仅是忽略具有非最新修改时间的文件)并将它们发送到新的日志组。
  8. 在 EC2 实例上重启应用程序

相当繁琐的过程,尤其是必须手动移动日志文件,一次一个,以正确的顺序。如果将来有重命名日志组的功能就更好了。

一个"solution" ...

创建新的日志组。 让流写入此日志组。 使用 aws cli 获取旧日志组的每个流的事件,然后将它们放入新组。

我有大约 2,000 个流我也打算这样做。我们重组的是组名。