详情页标题前

阿里云日志服务SLS使用Go SDK创建分层存储Logstore-云淘科技

详情页1

本文介绍通过Go SDK创建分层存储Logstore的代码示例。

前提条件

  • 已创建RAM用户并完成授权。具体操作,请参见创建RAM用户并完成授权。

  • 已配置环境变量ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET。具体操作,请参见配置环境变量。

    重要

    • 阿里云账号的AccessKey拥有所有API的访问权限,建议您使用RAM用户的AccessKey进行API访问或日常运维。

    • 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。

  • 已安装日志服务Go SDK。更多信息,请参见安装Go SDK。

  • 已安装proto依赖包。安装命令为go get -u github.com/gogo/protobuf/proto

背景信息

日志服务提供智能分层存储功能,降低您长周期存储的成本,并同时保证日志的查询、分析、可视化、告警、投递和加工等能力不受影响。更多信息,请参见数据分层存储概述。

您可以通过日志服务控制台,开启智能分层存储功能。具体操作,请参见开启智能存储分层。

创建分层存储Logstore的代码示例

本示例中,创建一个SLSColdLogstore.go文件,并调用CreateLogStore接口创建分层存储库。示例如下:

package main
import (
    "fmt"
    "os"
    "time"

    "github.com/aliyun/aliyun-log-go-sdk"
)
func main() {
    // 日志服务的服务入口。此处以杭州为例,其它地域请根据实际情况填写。
    Endpoint := "cn-hangzhou.log.aliyuncs.com"
    // 本示例从环境变量中获取AccessKey ID和AccessKey Secret。
    AccessKeyId := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
    AccessKeySecret := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
    // RAM用户角色的临时安全令牌。此处取值为空,表示不使用临时安全令牌。更多信息,请参见授权用户角色。
    SecurityToken := ""
    // 创建日志服务Client。
    Client := sls.CreateNormalInterface(Endpoint, AccessKeyId, AccessKeySecret, SecurityToken)
    // Project名称。
    ProjectName := "aliyun-test-project"
    // Logstore名称。
    LogStoreName := "aliyun-test-logstore"

    err := Client.CreateLogStore(ProjectName,LogStoreName,2,2,true,64)
    if err != nil {
        panic(err)
    }
    logstore, err := Client.GetLogStore(ProjectName, uLogStoreName)
    if err != nil {
        panic(err)
    }
    fmt.Println("create logstore successfully:", logstore.Name)
    // 更新热存储层数据保存时间为61天。
    updateLogstore := &sls.LogStore{
        Name:LogStoreName,
        TTL:80,
        ShardCount:10,
        AutoSplit:false,
        WebTracking:true,
        HotTTL: 61,
    }
    err = Client.UpdateLogStoreV2(ProjectName,updateLogstore)
    if err != nil {
        panic(err)
    }
    fmt.Println("update logstore suecessed")
    fmt.Println("Prepare to delete the logstore after 30 seconds")
    time.Sleep(30 * time.Second)
    err = Client.DeleteLogStore(ProjectName, LogStoreName)
    if err != nil {
        panic(err)
    }
    fmt.Println("Delete Logstore successfully")
}

调用UpdateLogStoreV2接口更新Logstore并设置分层存储参数,UpdateLogStoreV2接口参数说明如下表所示。

参数名称

类型

是否必选

示例

说明

ProjectName

String

aliyun-test-project

Project名称。

在创建Client时,已定义project_name,此处无需配置。

LogStoreName

String

aliyun-test-logstore

Logstore名称。

在创建Client时,已定义logstore_name,此处无需配置。

TTL

Long

3000

数据在Logstore中的保存时间。单位:天,取值范围:1~3000。超过该时间后,数据会被删除。

警告

当日志保存时间达到您所设置的保存时间后,日志将被删除。

ShardCount

Long

2

Shard个数。取值范围为1~10。

HotTTL

String

60

数据在Logstore热存储层中的存储时间,最少为7天。单位:天,取值范围:7~3000。

当数据的存储时间超过您所配置的热存储层数据保存时间后,数据将转为低频存储(原冷存储)。更多信息,请参见开启智能存储分层。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/165051.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云RDS数据库DescribeHistoryTasks – 查询历史运维任务-云淘科技

    该接口用于获取历史任务记录,支持创建时间30天内的任务。 接口说明 适用引擎 RDS MySQL RDS PostgreSQL RDS SQL Server 相关功能文档 注意 使用该接口前,请仔细阅读功能文档,确保完全了解使用接口的前提条件及使用后造成的影响后,再进行操作。 RDS MySQL任务列表 RDS PostrgreSQL任务列表 RDS SQL…

    阿里云数据库 2023年12月9日
  • 阿里云容器服务ACKRAM鉴权-云淘科技

    在使用RAM账号调用阿里云API前,需要主账号(即阿里云账号)通过创建授权策略对RAM账号进行授权。 资源授权 默认RAM账号没有权限通过调用阿里云API去创建、修改云资源。使用RAM账号调用API时,您需要先创建一个授权策略,然后将这个授权策略关联给对应的RAM账号完成资源授权。 在创建授权策略时,您可以通过ARN(Aliyun Resource Name…

    阿里云容器服务 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云ECS云服务器DescribeAutoProvisioningGroupHistory-云淘科技

    调用DescribeAutoProvisioningGroupHistory查询弹性供应组的调度任务信息。 调试 您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。 请求参数 名称 类型 是否必选 示例值 描述 Action String 是 Describ…

    阿里云服务器 2023年12月9日
  • 阿里云容器服务ACKRAM鉴权-云淘科技

    在使用RAM账号调用阿里云API前,需要主账号(即阿里云账号)通过创建授权策略对RAM账号进行授权。 资源授权 默认RAM账号没有权限通过调用阿里云API去创建、修改云资源。使用RAM账号调用API时,您需要先创建一个授权策略,然后将这个授权策略关联给对应的RAM账号完成资源授权。 在创建授权策略时,您可以通过ARN(Aliyun Resource Name…

    阿里云容器服务 2023年12月10日
  • 阿里云ECS云服务器查询抢占式实例库存-云淘科技

    如果您是开发者,可参考本文提供的Alibaba Cloud SDK for Java示例查询某一地域下有库存的抢占式实例规格。 前提条件 已准备阿里云账号以及对应的访问密钥(AccessKey)。 使用Alibaba Cloud SDK for Java时需要设置阿里云账号的AccessKey信息。AccessKey的获取方式,请参见创建AccessKey。…

    2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。