比Filebeat更强大的日志收集工具-Fluent bit的http插件实战

文章目录

    • 1.前言
    • 2. fluent bit http插件配置以及参数详解
    • 3. Http 接口服务
      • 3.1 开发Http 接口服务
      • 3.2 重启fluent bit向http web服务发送数据


1.前言

Fluent Bit 的 HTTP 插件提供了一种灵活而通用的机制,可用于将日志数据 从各种环境中传输到指定的远程服务器,具有很强的适用性和实用性。

  • 实时日志传输: HTTP 插件使 Fluent Bit 能够将实时产生的日志数据以 HTTP 协议的形式传输到指定的远程服务器。这对于实时监控、分析和处理日志非常重要。
  • 远程日志收集: 在分布式系统或微服务架构中,日志可能产生在不同的节点上。使用 HTTP 插件,可以轻松地将这些分布在各处的日志集中传输到中心化的日志收集服务器。
  • 云服务集成: 在云环境中,可以使用 HTTP 插件将日志数据发送到云服务提供商的日志服务,实现云端的日志管理和监控。
  • 跨平台和跨语言: HTTP 是一种通用的协议,可以与几乎所有编程语言和平台兼容。因此,HTTP 插件使 Fluent Bit 能够与各种应用程序和系统集成,实现跨平台和跨语言的日志传输。

本文详细介绍了如何进行http插件的配置实现将fluent bit收集的日志信息传输至自定义http接口。

2. fluent bit http插件配置以及参数详解

在这里插入图片描述

  • Match

配置文件中定义的[Input]部分的tag值

在这里插入图片描述
如上述配置文件中所见,[Output]部分Match使用[Input]中Tag值sample

  • Format

文本传输内容的格式,默认为msgpack

  • Header

添加http请求头信息

此样例中通过请求头指定了
Content-Type:application/json

  • URI

目标web服务的Http URI

如,接口完整请求地址为
127.0.0.1:8080/output/http, 那么URI为output/http

  • json_date_key

在输出记录中指定时间键的名称

如,指定输出的时间key为@timestamp,那么通过http传送后接收到的时间信息如下,
在这里插入图片描述

  • json_date_format

指定日期的格式。 支持的格式为double、epoch、iso8601(例如:2018-05-30 T09:39:52 . 000681Z)和java_sql_timestamp(例如:2018-05-30 09:39:52.000681)

如, 指定日期格式为iso8601,Http服务接收到的数据中日期的格式如下,
在这里插入图片描述

3. Http 接口服务

3.1 开发Http 接口服务

注意服务入参一定是要json数组,因为fluent bit发送数据时是数组格式

package com.example.controller;

import com.alibaba.fastjson.JSONObject;
import org.springframework.web.bind.annotation.*;


@RestController
@RequestMapping("/output")
public class FluentBitDemo {

    @PostMapping("/http")
    public String inputAuditWithMsg(@RequestBody JSONObject[] audits){

        System.out.println("== begin audit with msg ==");

        for(JSONObject obj : audits){
            System.out.println("==  audit msg info ==" + obj.toString());
        }

        return "success";

    }
}

3.2 重启fluent bit向http web服务发送数据

查看Http服务接收到fluent bit 发送的数据
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/359508.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++_list

目录 一、模拟实现list 1、list的基本结构 2、迭代器封装 2.1 正向迭代器 2.2 反向迭代器 3、指定位置插入 4、指定位置删除 5、结语 前言: list是STL(标准模板库)中的八大容器之一,而STL属于C标准库的一部分,因此在C中可以直接使用…

TestNG中的DataProviders(@DataProvider annotation)

目录 什么是数据提供者? 数据提供程序及其返回的内容 DataProvider语法 DataProvider注释的方法可以返回什么? 使用数据提供程序的测试用例 如何在测试用例中使用数据提供程序? 其他类中的数据提供程序 在DataProvider带注释的方法中…

深度强化学习(王树森)笔记11

深度强化学习(DRL) 本文是学习笔记,如有侵权,请联系删除。本文在ChatGPT辅助下完成。 参考链接 Deep Reinforcement Learning官方链接:https://github.com/wangshusen/DRL 源代码链接:https://github.c…

植物病害检测YOLOV8,OPENCV调用

【免费】植物病害检测,10种类型,YOLOV8训练,转换成ONNX,OPENCV调用资源-CSDN文库 植物病害检测,YOLOV8NANO,训练得到PT模型,然后转换成ONNX,OPENCV的DNN调用,支持C,PYTH…

算法——线性代数——逆序数奇偶

一、逆序数奇偶 分析: 概念: 求一个排列的逆序数奇偶性有两种方法,一种是从前往后遍历数组,另一种是从后往前遍历数组从前往后时,当前数字前面大于它的数字的个数即为它的逆序数个数从后往前时,当前数字前…

Docker的使用方式

一、Docker概念 Docker类似于一个轻量的虚拟机。 容器和镜像是Docker中最重要的两个概念,镜像可以保存为tar文件,Dockerfile是配置文件,仓库保存了很多第三方已经做好的镜像。 基本指令 查找镜像 docker search nginx 拉取nginx镜像 do…

Yalmip学习笔记

这里写自定义目录标题 基本用法变量定义关于大MBilevel programming 注:这篇文章主要是留给自己查漏补缺的,所以从来没有使用过yalmip的读者看着会觉得跳来跳去。 基本用法 建模开始前,使用yalmip(clear)清空Yalmip的内部数据库。 下面是一个…

少儿编程教育:培养未来创新者

在这个数字化飞速发展的时代,编程已经成为了一门新的通用语言。随着科技的不断进步,编程教育正逐渐从高等教育领域向中小学乃至幼儿园渗透。6547网认为少儿编程不仅是一种技能的培养,更是对孩子们逻辑思维、解决问题能力和创造力的锻炼。图形…

Spring 中获取 Bean 对象的三种方式

目录 1、根据名称获取Bean 2、根据Bean类型获取Bean 3、根据 Bean 名称 Bean 类型来获取 Bean(好的解决方法) 假设 Bean 对象是 User,并存储到 Spring 中,注册到 xml 文件中 public class User {public String sayHi(){retur…

Mac安装及配置MySql及图形化工具MySQLworkbench安装

Mac下载配置MySql mysql下载及安装 下载地址:https://dev.mysql.com/downloads/mysql/ 根据自己电脑确定下载x86还是ARM版本的 如果不确定,可以查看自己电脑版本,终端输入命令 uname -a 点击Download下载,可跳过登录注册&…

Oracle 面试题 | 01.精选Oracle高频面试题

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

python统计分析——中心极限定理

参考资料:用python动手学统计学 对于任意总体分布,样本容量越大,随机变量的和的分布越接近正态分布,这就是中心极限定理定理。 以掷硬币为例讲解。模拟投硬币1万次中,正面朝上的次数的分布。 import numpy as np impo…

Redis -- 开篇热身,常用的全局命令

目录 Redis重要文件 启动停止脚本 配置文件 持久化文件存储目录 核心命令 set get 全局命令 keys exists del expire ttl 过期策略是如何实现的 定时器 type 小结 Redis重要文件 启动停止脚本 /usr/bin/redis-benchmark : 用于对Redis做性能基准…

操作系统A-第四和五章(存储器)作业解析

目录 1、在请求分页系统中,某用户程序的逻辑地址空间为 16 页,每页 1KB,分配的内存空间为 8KB。假定某时刻该用户的页表如下表所示。 试问:(1)逻辑地址 184BH 对应的物理地址是多少?(用十六进制表示&…

【个人博客搭建】Hexo安装部署

目录 一、本地构建Hexo (一) 安装前提 1. Node.js 2. Git 3. Hexo (二) 初始化Hexo 1. 初始化博客目录 2. 配置网站基本信息 (三) 主题配置 1. 选择主题 2. 下载主题 (四) 本地启动Hexo 1. 生成静态文件 2. 启动服务 二、部署 (一) 部署到Github Pages 1. 新建…

Session

Session的基本使用 1.概念 Session:服务端会话跟踪技术:将数据保存到服务端。 Session是存储在服务端而Cookie是存储在客户端 存储在客户端的数据容易被窃取和截获,存在很多不安全的因素 存储在服务端的数据相比于客户端来说就更安全 2…

人工智能(pytorch)搭建模型23-pytorch搭建生成对抗网络(GAN):手写数字生成的项目应用

大家好,我是微学AI,今天给大家介绍一下人工智能(pytorch)搭建模型23-pytorch搭建生成对抗网络(GAN):手写数字生成的项目应用。生成对抗网络(GAN)是一种强大的生成模型,在手写数字生成方面具有广泛的应用前景。通过生成…

【RT-DETR有效改进】Bi-FPN高效的双向特征金字塔网络(附yaml文件+完整代码)

👑欢迎大家订阅本专栏,一起学习RT-DETR👑 一、本文介绍 本文给大家带来的改进机制是BiFPN双向特征金字塔网络,其是一种特征融合层的结构,也就是我们本文改进RT-DETR模型中的Neck部分,它的主要思想是通过多层级的特征金字塔和双向信息传递来提高精度。本文给大家带…

走迷宫-bfs

package Test;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;public class Main {static int N 110,hh 0,tt -1,n,m;static int[][] g new int[N][N]; //用来存储迷宫static int[][] d new int[N][N]; //用来存储d[i…

yarn 现代的包管理工具 介绍

一、前言 yarn 是一个现代的包管理工具,它是 npm(Node Package Manager)的一个替代品。yarn 由 Facebook 开发,并在 2016 年发布。它解决了当时 npm 的一些问题,尤其是在性能和安全性方面。 yarn 主要用于以下几个方面…