989 字
5 分钟
如何删除GCP Logging中的日志 - 一次被GCP Ops Agent坑惨的经历

上一次评测GCP飘了,以为已经将GCP的如意算盘谙熟于心,结果发现还是自己太年轻,不懂得社会的险恶。GCP你能不能别那么坑啊!

起因#

VM Instances的instance详情页有个Observability(太擅长观察了故取Google特色名Observability),用来监控机器状态的。硕大的两个Install可太有诱惑力了,我以为Ops Agent就是一个简单的监控,监控一下memory和disk的,就开心地点了一下。

1

不寻常的账单#

第二天起来一看,账单里居然有$0.3待付金额,一开始我还以为是Free Tier的Credit还没来得及Apply,就没管。下午一看居然变成了$0.5。这样一算一个月我得花费$30,就算正价机器也没那么贵啊(按照上一篇文章应该在$10之内)!

必须再吐槽一下Billing页面的Report,翻遍了所有页面都看不出是什么产生的问题。就这报表,只要有那么一点点关系的全给我分类到Compute Engine,还没有子分类。

2

端倪#

后来我手动搜索Log来到了Monitoring页面,终于发现了一些端倪。

3

妙啊,Fluent Bit for logs和high-throughput logging是吧,你是一点都不提价格啊。一看Logs Explorer,一千多条带有”opsagent”字样的Log,全是INFO级别的System Log,没什么信息含量(还那么贵!)。一千多条在计算机角度也不算很多,但是对GCP可是一大块肥肉呢!

解决方法#

好吧,那接下来怎么办==看了一下文档,改Ops Agent的Config可以禁用Log(GCP你为什么要默认开启Log!我可没同意!),但是这太危险了,万一改了不生效或者还自带有其他收费项那可太麻烦了,干脆销毁了重开这台机器好了。

为了防止已经生成的Log产生费用,并且满足一下我的小小强迫症,我还是想着删掉这些Log。于是再一次翻遍了Log相关的页面,硬是没找着删除的地方。你猜怎么着?根本就没有删除的地方,只能通过命令行删除!真有你的GCP,欺负我文化水平低是吧!下面我就详细说一下怎么删除。

打开Web Shell#

点击Activate以后等它加载,要一点时间,可以先进行下一步。

4

找到Project栏#

就是搜索栏左边写着你的项目名称的复选框。

5

记下Project ID#

记下右边ID栏的当前Project ID,像我就是”hidandelion”。

6

Web Shell切换Project#

在Web Shell里,需要先切换到目前的Project才能执行命令。

gcloud config set project <Project ID>

7

成功会提示:

Updated property [core/project].

Web Shell删除Log#

运行删除代码删除syslog,然后输入Y确认。

gcloud logging logs delete projects/<Project ID>/logs/syslog

8

成功会提示:

Deleted [projects/<Project ID>/logs/syslog].

这里删除的只是占大头的syslog,如果要删除其他的,还得进入Logs Explorer,点开Expand this log entry。这里我是随便找了个Network Logging,实际上只需要删除Ops Agent相关的可疑Log就可以了。因为其他的已经全被我删了,就暂时拿这个当例子咯~

9

找到logName项,复制里面的内容。

10

再运行相应的指令删除。

gcloud logging logs delete <logName>

删除完成就可以了,虽然Log buckets还是会显示有storage,但是点进去实际上已经没有了(这又是什么奇怪bug啊喂)。

11

小贴士#

遇到Ops Agent千万不要轻易开启,不仅仅是在上面的机器详情页面,开机的时候也千万不要勾选!

12

总结#

今天体验了GCP莫名其妙的收费项目和贴心的用户体验(指的是让你学习一下Shell指令,有助于你的Linux学习)。GCP,我饶不了你,这事可没完!

如何删除GCP Logging中的日志 - 一次被GCP Ops Agent坑惨的经历
https://www.hidandelion.com/posts/gcp-how-to-delete-logging-logs/
作者
hiDandelion
发布于
2024-07-27
许可协议
CC BY-NC-SA 4.0