对日志流的增删查操作
引导式阅读
Go
对日志流的增删查操作
作者
C***
上架时间
2023-11-14 08:51:59

版本说明

本示例基于华为云SDK开发

日志流增查改删操作场景

本示例展示如何通过go版本的SDK方式对日志流进行管理。

功能介绍

本实例为对指定日志组下的日志流进行创建,查询,删除操作。

前置条件

1.已 注册 华为云,并完成 实名认证

2.获取华为云开发工具包(SDK),您也可以查看安装Go SDK。

3.已获取华为云账号对应的Access Key(AK),Secret Access Key(SK)以及对应项目的id。请在华为云控制台“我的凭证 > 访问密钥”页面上创建和查看您的AK/SK。具体请参见 访问密钥

4.已具备开发环境 ,支持Go 1.16及其以上版本。

代码示例

package main import ( ltsRegion "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" "fmt" "os" "log" coreBasic "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" ltsModel "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" ) type LogStreamDemo struct{} func NewLogStreamDemoDefault() LogStreamDemo { l := LogStreamDemo{} return l } func main() { // 1.基础认证信息: // ak: 华为云账号Access Key // sk: 华为云账号Secret Access Key // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak := os.Getenv("HUAWEICLOUD_SDK_AK") sk := os.Getenv("HUAWEICLOUD_SDK_SK") // 2.初始化SDK,传入认证信息及CloudDeploy局点信息 auth := coreBasic.NewCredentialsBuilder().WithAk(ak).WithSk(sk).Build() client := *lts.NewLtsClient(lts.LtsClientBuilder(). WithCredential(auth). WithRegion(ltsRegion.ValueOf("cn-east-2")). Build()) // 3.进行相应操作 // 创建日志流 logStreamDemoCreateLogStream(client) // 查询日志流们 logStreamDemoListLogStream(client) // 删除日志流 logStreamDemoDeleteLogStream(client) } func logStreamDemoCreateLogStream(client lts.LtsClient) { request := ltsModel.CreateLogStreamRequest{} request.LogGroupId = "{logGroupId}" body := ltsModel.CreateLogStreamParams{} body.LogStreamName = "logStreamName" request.Body = &body response, err := client.CreateLogStream(&request) if err != nil { fmt.Println(err) return } log.Println(response.String()) } func logStreamDemoListLogStream(client lts.LtsClient) { request := ltsModel.ListLogStreamRequest{} request.LogGroupId = "{logGroupId}" listLogStreamRequestTagParam := "k1=v1" request.Tag = &listLogStreamRequestTagParam response, err := client.ListLogStream(&request) if err != nil { fmt.Println(err) return } log.Println(response.String()) } func logStreamDemoDeleteLogStream(client lts.LtsClient) { request := ltsModel.DeleteLogStreamRequest{} request.LogGroupId = "{logGroupId}" request.LogStreamId = "{logStreamId}" response, err := client.DeleteLogStream(&request) if err != nil { fmt.Println(err) return } log.Println(response.String()) }

您可以在 API Explorer 中直接运行调试该接口。

修订记录

发布日期 文档版本 修订说明
2021-11-19 1.0 文档首次发布