赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 日志服务
  4. 操作指南
  5. 数据采集
  6. 其他采集方式
  7. 使用Loggie上传日志

使用Loggie上传日志

  • 其他采集方式
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

Loggie是一个基于Golang的轻量级、高性能的云原生日志采集Agent。您可以使用Loggie的Sink配置,将采集到的日志上传到日志服务。本文介绍通过Loggie上传日志到日志服务的操作步骤。

前提条件

已创建Project和Logstore。具体操作,请参见创建项目Project和创建Logstore。

使用限制

支持的Loggie版本需为v1.2.0及以上。

配置参数说明

使用Loggie Sink上传日志时,您需要配置以下参数。更多信息,请参见SLS Sink。

参数

必填

说明

type

是

固定为sls。

name

否

Loggie Sink的采集名称。

endpoint

是

日志服务的服务入口。更多信息,请参见服务入口。

project

是

目标Logstore所在的Project。

logstore

是

用于存储日志的Logstore。

topic

否

日志主题,自定义设置。

accessKeyId

是

阿里云AccessKey ID。建议使用RAM用户的AccessKey,该RAM用户需具备Project、Logstore的写权限。更多信息,请参见RAM自定义授权示例。如何获取AccessKey ID,请参见访问密钥。

accessKeySecret

是

阿里云AccessKey Secret。建议使用RAM用户的AccessKey,该RAM用户需具备Project、Logstore的写权限。更多信息,请参见RAM自定义授权示例。如何获取AccessKey Secret,请参见访问密钥。

示例一:通过Loggie采集ECS日志

采集ECS日志前,您需要在ECS中部署Loggie。具体操作,请参见主机部署。其中,在创建pipelines.yml文件时,需添加Sink配置,示例如下:

pipelines:
  - name: test
    sources:
      - type: file
        name: demo
        addonMeta: true
        paths:
          - /tmp/log/*.log
    sink:
      type: sls
      endpoint: ${endpoint}
      accessKeyId: ${accessKeyId}
      accessKeySecret: ${accessKeySecret}
      project: ${project}
      logstore: ${logstore}
      topic: ${topic}
  • sources:通过sources指定日志的类型和日志所在位置。本示例是采集/tmp/log目录下所有文件名以.log结尾的文件中的日志。

  • sink:通过sink指定日志服务相关信息。各个参数说明,请参见配置参数说明。

通过Loggie采集ECS日志到日志服务后,您可以在目标Logstore中查看日志,日志样例如下图所示。

Loggie

示例二:通过Loggie采集Kubernetes集群日志

您可以在阿里云ACK集群或自建Kubernetes集群中部署Loggie,然后通过Loggie将日志上传到日志服务。

您可以通过kubectl或Helm工具部署Loggie。本文以通过Helm安装Loggie为例,介绍采集kube-system命名空间下的标准输出。必要的安装步骤如下所示,更多信息,请参见Loggie Kubernetes部署。

  1. 在Kubernetes集群中,通过Helm安装Loggie。

    helm pull https://github.com/loggie-io/installation/releases/download/v1.2.0/loggie-v1.2.0.tgz && tar xvzf loggie-v1.2.0.tgz
  2. 部署Loggie。

    其中,./loggie为loggie-v1.2.0.tgz的解压目录。

    helm install loggie ./loggie -nloggie --create-namespace
    重要
    • 如果您要采集未挂载emptyDir/hostPath的Pod日志,请确保values.yaml文件的系统配置中的discovery.kubernetes.rootFsCollectionEnabled为true。

    • 配置discovery.kubernetes.containerRuntime为匹配的Kubernetes集群的容器运行时,默认配置为containerd。

安装Loggie后,您需要创建一个Logconfig CRD文件,用于采集日志。更多信息,请参见Logconfig。本文以采集kube-system下的pod的标准输出为例,对应的CRD示例如下:

apiVersion: loggie.io/v1beta1
kind: LogConfig
metadata:
  name: loggie-config
  namespace: kube-system
spec:
  selector:
    labelSelector:
      namespace: kube-system
    type: pod

  pipeline:
    sources: |
      - type: file
        name: stdout
        paths:
          - stdout
    sink: |
      type: sls
      endpoint: ${endpoint}
      accessKeyId: ${accessKeyId}
      accessKeySecret: ${accessKeySecret}
      project: ${project}
      logstore: ${logstore}
      topic: myservice
  • sources:通过sources指定采集容器的标准输出。

  • sink:通过sink指定日志服务相关信息。各个参数说明,请参见配置参数说明。

通过Loggie采集Kubernetes日志到日志服务后,您可以在目标Logstore中查看日志,日志样例如下图所示。Loggie

更多参考

  • Loggie简介

  • SLS Sink配置

  • 使用Loggie上传日志到日志服务实战

相关文章

使用Web Tracking采集日志 2025-04-22 11:00

如果您需要收集和分析用户在浏览器、小程序上的信息,例如用户的浏览器、浏览行为记录、购买行为记录、停留时间,可以使用WebTracking功能。只需对业务代码进行较少的改动,例如在前端页面中添加追踪像素或集成JavaScript SDK,就可以将用户行为信息上传到日志服务的Logstore中。

使用Kafka协议上传日志 2025-04-22 11:00

您可以使用Kafka Producer SDK、Beats系列软件、Collectd、Fluentd、Logstash、Telegraf、Vector等采集工具采集日志,并通过Kafka协议上传到日志服务。本文介绍通过采集工具采集到日志后,利用Kafka协议上传日志到日志服务的操作步骤。

使用Syslog协议上传日志 2025-04-22 11:00

您可以使用Syslog-ng采集日志并通过Syslog协议上传到日志服务。本文介绍通过Syslog协议将日志上传到日志服务的操作步骤。 相关限制

使用Loggie上传日志 2025-04-22 11:00

Loggie是一个基于Golang的轻量级、高性能的云原生日志采集Agent。您可以使用Loggie的Sink配置,将采集到的日志上传到日志服务。本文介绍通过Loggie上传日志到日志服务的操作步骤。 前提条件 已创建Project和Logstore。具体操

SDK采集 2025-04-22 11:00

开发人员可以使用.NET、.NET Core、Java、Python、PHP、Node.js、C、GO、IOS、Android、C++等语言的SDK采集、查询和分析日志等。

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号