批量开启 SLS 服务日志

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 背景 SLS 服务日志支持记录 Project 内的用户操作日志等多种日志数据,并提供多种分析维度的仪表盘。在开通此功能后,相关的日志都会被存储到指定位置(project)下的两个特殊 logstore:internal-operation_log 以及 internal-diagnostic_log,我们可以像操作普通 logstore 一样,对它们进行查询、分析、消费以及构建仪表盘等。

背景

SLS 服务日志支持记录 Project 内的用户操作日志等多种日志数据,并提供多种分析维度的仪表盘。在开通此功能后,相关的日志都会被存储到指定位置(project)下的两个特殊 logstore:internal-operation_log 以及 internal-diagnostic_log,我们可以像操作普通 logstore 一样,对它们进行查询、分析、消费以及构建仪表盘等。

服务日志的开启过程涉及到一系列 SLS 资源的创建,包括 logstore、索引、仪表盘等,因此,目前仅支持通过控制台开启此功能。但考虑到我们需要管理的 project 数量可能会有几十上百个,逐个到控制台开启费时费力,无法满足自动化运维的需求。对此,本文将介绍如何通过日志服务的 API 来实现服务日志功能的开启。

准备工作

1. SLS CLI 安装

参考文档安装或者直接在控制台上打开 CloudShell(入口参考下图)。

2. 使用 Git 下载脚本

代码已托管于 Github,可直接下载:

$ git clone https://github.com/Goclis/logtail-monitor.git
$ ls -al logtail-monitor/sls_project_logging_ctl.py

使用说明

针对指定的 project,工具脚本会创建对应的 logstore 来存储服务日志,并对相关的索引/仪表盘进行创建或更新(会对当前已存在的配置进行覆盖,请在执行前确认是否会有影响)。

在使用之前,需要修改脚本 sls_project_logging_ctl.py 的内容,对以下参数进行配置:

  • access_key_id:AK 信息,必填。
  • access_key_secret:AK 信息,必填。
  • region_endpoint:要开启服务日志的 project 所在 region 的 endpoint,可通过参数指定。
  • project_name:要开启服务日志的 project 名,可通过参数指定。

可执行 sls_project_logging_ctl.py -h 可查看更多相关说明。

注意:操作日志(internal-operation_log)为收费内容,请根据需要来确认是否开启。

使用示例

根据脚本中配置进行开启

# 开启所有日志
./sls_project_logging_ctl.py enable all
# 仅开启诊断日志
./sls_project_logging_ctl.py enable internal-diagnostic_log
# 仅开启操作日志
./sls_project_logging_ctl.py enable internal-operation_log

命令行参数中指定 region/project

# 开启所有日志(cn-hangzhou 公网)
./sls_project_logging_ctl.py enable cn-hangzhou.log.aliyuncs.com my-project-name all
# 仅开启诊断日志(cn-shanghai 公网)
./sls_project_logging_ctl.py enable cn-shanghai.log.aliyuncs.com my-project-name internal-diagnostic_log
# 仅开启操作日志(cn-hangzhou 内网)
./sls_project_logging_ctl.py enable cn-hangzhou-intranet.log.aliyuncs.com my-project-name internal-operation_log

更多阅读

基于服务日志进行 logtail 监控:

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
18天前
|
Java
使用Java代码打印log日志
使用Java代码打印log日志
73 1
|
19天前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
72 1
|
23天前
|
SQL 关系型数据库 MySQL
MySQL数据库,可以使用二进制日志(binary log)进行时间点恢复
对于MySQL数据库,可以使用二进制日志(binary log)进行时间点恢复。二进制日志是MySQL中记录所有数据库更改操作的日志文件。要进行时间点恢复,您需要执行以下步骤: 1. 确保MySQL配置文件中启用了二进制日志功能。在配置文件(通常是my.cnf或my.ini)中找到以下行,并确保没有被注释掉: Copy code log_bin = /path/to/binary/log/file 2. 在需要进行恢复的时间点之前创建一个数据库备份。这将作为恢复的基准。 3. 找到您要恢复到的时间点的二进制日志文件和位置。可以通过执行以下命令来查看当前的二进制日志文件和位
|
29天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
48 0
|
30天前
|
存储 数据库
ALTER MATERIALIZED VIEW LOG :语句来更改现有物化视图日志的存储特征或类型。
`ALTER MATERIALIZED VIEW LOG` 语句用于修改已有的物化视图日志的存储属性或类型。配合示例中的动画图像(由于格式限制无法显示),该语句帮助优化数据库的性能和管理。
44 0
|
10天前
|
运维 安全 Ubuntu
`/var/log/syslog` 和 `/var/log/messages` 日志详解
`/var/log/syslog` 和 `/var/log/messages` 是Linux系统的日志文件,分别在Debian和Red Hat系发行版中记录系统事件和错误。它们包含时间戳、日志级别、PID及消息内容,由`rsyslog`等守护进程管理。常用命令如`tail`和`grep`用于查看和搜索日志。日志级别从低到高包括`debug`到`emerg`,表示不同严重程度的信息。注意保护日志文件的安全,防止未授权访问,并定期使用`logrotate`进行文件轮转以管理磁盘空间。
19 1
|
11天前
|
网络协议 应用服务中间件 Linux
centos7 Nginx Log日志统计分析 常用命令
centos7 Nginx Log日志统计分析 常用命令
23 2
|
11天前
|
Ubuntu Linux 网络安全
/var/log/auth.log日志详解
`/var/log/auth.log`是Linux(尤其是Debian系如Ubuntu)记录身份验证和授权事件的日志文件,包括登录尝试(成功或失败)、SSH活动、sudo使用和PAM模块的操作。登录失败、SSH连接、sudo命令及其它认证活动都会在此记录。查看此日志通常需root权限,可使用`tail`、`less`或`grep`命令。文件内容可能因发行版和配置而异。例如,`sudo tail /var/log/auth.log`显示最后几行,`sudo grep "failed password" /var/log/auth.log`搜索失败密码尝试。
39 8
|
15天前
|
关系型数据库 MySQL Linux
linux特定服务日志
Linux系统的服务日志在`/var/log`目录下,如系统日志(`/var/log/syslog`或`/var/log/messages`)、认证日志(`/var/log/auth.log`)、SSH日志(`/var/log/auth.log`或`/var/log/secure`)。Web服务器(Apache和Nginx)的访问和错误日志、MySQL错误日志、Postfix及Dovecot邮件服务器日志也在此处。日志位置可能因发行版和服务配置而异,不确定时可查服务配置或用`grep`搜索。使用`logrotate`可管理日志文件大小。
18 6
|
23天前
|
监控 Java 测试技术
日志框架到底是Logback 还是 Log4j2
日志框架到底是Logback 还是 Log4j2
17 0

相关产品

  • 日志服务