全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多
日志服务

Logtail发布历史

更新时间:2018-04-16 18:09:46

0.16.6

新功能

  • 支持主机监控
  • 支持Redis监控
  • 支持采集Binlog中的DDL(data definition language)
  • 支持容器stdout和文件通过docker ENV(environment)过滤

问题修复

  • 兼容MySQL table无主键情况下的数据采集
  • 兼容容器采集模式下因docker engine watch不稳定造成事件丢失的问题

0.16.5

新功能

  • 支持容器stdout multi line模式

0.16.4

新功能

  • 支持Docker&Kubernetes 部署方案
  • 支持采集容器stdout 和 容器文件

0.16.2

新功能

  • 支持geo ip 处理方式

0.16.0

新功能

  • 支持Mysql binlog、Mysql 查询结果、http输入源
  • 支持数据组合解析配置:正则、Anchor、分隔符、过滤器

0.14.6

新功能

  • 增加启动配置项 no_inotify 用于配置是否禁用inotify
  • 增加启动配置项 inotify_black_list 用于配置目录黑名单(/tmp默认在黑名单中,结尾不要包括’/‘)
  • 增加启动配置项 log_parse_error 用于配置是否记录并上报错误日志(默认true)
  • 增加采集配置项 delay_skip_bytes,当采集delay超过delay_skip_bytes 时直接跳到文件尾

0.14.5

新功能

  • 增加手动导入数据的接口
  • 增加采集配置项 delay_alarm_bytes
  • 新增启动配置 discard_old_data
  • 增加关闭解析告警的本地配置

优化

  • metric格式修改为json

问题修复

  • 修复专有云环境下配置无法删除的问题

0.14.3

问题修复

  • 日志open失败时不删除checkpoint,缓存10分钟,防止因日志轮转时写入顺序问题导致重复采集

0.14.2

新功能

  • 增加忽略文件夹iNode变化的设置参数

    问题修复

  • 修复在进程退出时有一定概率没有刷出最后几条未发送日志的问题
  • 当注册inotify失败时,进程不退出,继续使用Polling工作

    优化

  • 优化Polling limit输出

0.14.1

新功能

  • 配置增加优先级功能,默认优先级为0

    问题修复

  • 修复纯粹轮询情况下文件删除后重新创建有概率丢失事件的问题

    优化

  • 公有云数据发送速率从2M/s上调到20M/s
  • 公有云Logtail默认内存上限调整到256M
  • 增加proxy endpoint自动识别,降低优先级
  • 优化获取ip逻辑:hostname->eth0->bond0
  • 限制低优先级Alarm日志打印tps,包括regex、split、outdated alarm
  • 优化checkingtool检查脚本
  • 如果网络异常超过2小时,强制进行重启
  • 增加新的Alarm类型:PROCESS_TOO_SLOW_ALARM,如果一次解析时间超过1秒,则上报该错误,提示用户优化数据解析逻辑

0.13.9

新功能

  • 增加直连ip发送功能,降低vip负载
  • 配置增加自定义delay报警功能
  • 增加truncate时自动向前skip的配置功能
  • 首次采集时优化向前查找1M的逻辑,防止直接跳到1M导致日志截断报错

优化

  • 进一步调整Quota fail策略,count 1, retry interval 3, scale 2

    问题修复

0.13.7

新功能

  • 增加Global server版本实现
  • 新增脱敏功能
  • 新增采集配置流控功能
  • 新增时区强制转换功能

优化

  • 增加block Event管理功能,防止遇到block Event强制sleep input线程,提高事件处理效率

问题修复

  • 增强采集配置有效性检查,防止无效采集配置运行
  • 修复多字符分隔符解析连续多个空字段结尾的日志时会漏掉最后一个字段的问题
  • 修复RPM打包时因网络问题可能会丢失binary的问题
  • 修复ilogtaild status检查误判问题
  • 修复因内核、glibc bug导致配置获取线程僵死的问题
  • 修复checkpoint文件损坏时logtail无法重启的问题

0.13.4

优化

  • gbk 按行转码,转码失败时上传原始行

0.13.3

问题修复

  • 配置升级时对于max_depth刚好匹配的Reader会被误删,导致这部分配置可能重复采集1M数据

0.13.2

新功能

  • 新增status功能,支持查询logtail自身状态以及采集进度

问题修复

  • Find Best Match 路径相同通过create time判断优先级,逻辑见附件
  • REGISTER_INOTIFY_FAIL_ALARM 切换成系统级别Alarm
  • 轮询max_depth判断错误,比配置的少1
  • 文件删除->创建时若dev+inode相同单signature与文件名不同需重新创建reader
  • json情况下一条数据超过512K情况下可能crash的问题修复
  • 解析阻塞多个轮转文件时,配置更新可能出现阻塞文件解析进度丢失的问题
  • 解决logtail crash在tcmalloc 中时上报堆栈信息时会造成死锁的问题
  • GBK编码转换失败支持将转换失败前的原始日志上报
  • 丢弃发送失败超过6小时的数据

优化

  • 新增Alarm TOO_MANY_CONFIG_ALARM SAME_CONFIG_ALARM PROCESS_QUEUE_BUSY_ALARM DROP_LOG_ALARM

0.13.0

问题修复

  • 刷新蚂蚁ilogtail_config.json

0.12.9

功能

  • 支持raw log上传

问题修复

  • 修复fd limit设置失败导致日志无法发送的问题

0.12.8

问题修复

  • 修复log file保持open可能会占用所有fd而导致网络不可用的问题
  • 修复7u中config中包含preserve配置时可能存在crash的问题

0.12.7

功能

  • 新增轮询收集模式,支持无notify的日志收集场景(例如,5u、6u、docker部分内核版本无inotify事件或事件不完整的环境)
  • 多租户隔离功能,多个logstore数据采集的资源分配互相隔离
  • 新增目录监控过滤配置,支持过滤监控目录下指定子目录 (控制台暂未上线)

问题修复

  • 真实路径与对应的软链接同时配置的情况下某一配置日志无法收集
  • 注册/删除监听目录时可能包含前缀名相同的目录
  • 老版本缓存文件有一定概率无法发送
  • 极少部分docker下logtail状态检查异常的问题
  • aliuid目录被删除时继续上报删除前的aliuid问题
  • notify事件解析中极低概率出现segment fault问题
  • checkpoint定期dump未清空缓存

优化

  • 日志发送调整为FIFO模式
  • 支持时间乱序的日志文件合并发送
  • 增加reader上限设置,超过上限时自动清理
  • 增加config match cache,提高配置查找性能
  • 增加inotify监控目录定期本地dump的策略
  • 优化监控目录注册/取消注册性能
  • 新增LOG_TRUNCATE_ALARM DIR_EXCEED_LIMIT_ALARM STAT_LIMIT_ALARM FILE_READER_EXCEED_ALARM

0.12.4

功能

  • 内存优化:增加reader定时清理机制、rotate上下文定时清理机制、冗余checkpoint清理
  • monitor在发现内存超出限制时强制进行垃圾清理
  • 增加升级过程中日志记录信息
  • 增加worker锁功能(本版本未开启)
  • 增加多租户隔离功能(本版本未开启)
  • 新增checkpoint定期保存机制,checkpoint路径可设置
  • 调整reader清理策略:Reader超过10000时清理超过7天未更改的reader,若清理完毕后还是超过10000,则清理超过1天未更改的reader

Bug Fix

  • 修复升级中可能出现多个worker同时运行的情况

参数调整

  • logreader_count_upperlimit:从100调整到10000

0.12.3

功能

  • config/data server发送数据支持bind source interface

Bug Fix

  • 修复多线程解析场景下,GetAlignedTime极低概率下,lastResetTime等static变量在多线程下互相影响问题

参数调整

  • READ_LOG_DELAY_ALARM判定阈值:从100MB调整为200MB
  • max_buffer_num:集团内从30调整为40,公有云从5调整为8

0.12.2

功能

  • 监控目录支持通配符
  • 每次启动生成新的instance_id,避免docker下可能发生的instance_id冲突导致心跳Fail问题
  • 首次心跳请求开始前random sleep 3秒,避免集中启动对config server请求压力

Bug Fix

  • ilogtaild修复docker场景下status、stop误操作问题

0.12.1

功能

  • 新增logtail诊断工具(试用,未进入安装包)

Bug Fix

  • tail_existed查找目标目录时,应遍历所有相关配置下的监控目录

0.12.0

功能

  • 弹内Region支持自动探测可用endpoint
  • 支持多user_defined_id
  • 新增SEND_QUOTA_EXCEED_ALARM、READ_LOG_DELAY_ALARM
  • delimiter日志单字符分割场景,解析性能优化
  • delimiter日志支持多字符分割
  • 修复cpp 0.6 sdk gethostbyname_r缓冲区溢出问题
  • 配置流请求失败时打印错误码
  • json日志解析GBK编码

0.11.8

功能

  • 自适应CPU资源上限调整
  • 日志解析流控
  • 优化stop Logtail操作,Logtail停止读新数据尽快flush数据并完成退出

Bug Fix

  • 修复监控目录删除时未移出监控项问题

0.11.7

专有云V3版本

功能

  • 支持data_server_mode选项

0.11.6

功能

  • 支持上下文查询功能
  • 支持ACS场景,本地映射监控目录

Bug Fix

  • 升级binary失败后,重新InitMonitor,导致worker进程内出现多个Monitor线程

0.11.4

优化

  • 弹内集群,心跳时间间隔改为3分钟

0.11.2

功能

  • 新增配置项 :tail_limit/tail_existed
  • logtail数据包按照分钟对齐

0.11.1

功能

  • 启动配置支持buffer_file_path设置

优化

  • 公有云环境下,心跳请求间隔从60秒缩短到15秒
  • burst_bytes_upperlimit参数调整到100GB

0.11.0

优化

  • 处理新错误码:ShardWriteQuotaExceed

Bug Fix

  • 修复0.10.9引入问题,更新配置时可能导致内存泄漏
  • 修复delimiter日志解析

0.10.9

集团内版本

优化

  • 修改RPM默认杭州endpoint
  • random sleep优化:key的batchMap满时,不再sleep

Bug Fix

  • 新版本读0.10.0前版本生成的buffer文件兼容性问题

0.10.8

公有云版本

优化

  • 首次打开文件回搠最多1MB数据,文件轮转时打开新文件从头开始读
  • 处理文件IN_CREATE事件,创建fileReader并设置offset为0,支持copy文件到监控目录的场景
  • 每一次batch发送数据操作前增加random sleep(0-400ms),绕过前段load burst问题

0.10.7

集团内部版本

优化

  • 自杀时设置SIGTERM信号进行处理,如果超时15秒程序仍在运行,则强制退出
  • 多Region发送时,很可能因为TestNetWork阻塞发送线程,将该操作放到缓存发送线程来做
  • 优化自升级失败场景(去掉RemoveMonitor操作,FlushOut超时从5秒提高到15秒)

0.10.6

集团内部版本

功能

  • merge 0.10.4的优化checkpoint超时释放逻辑、过滤127...*两项改动没有进该版本 两项改到到master分支
  • 解析线程默认调整到1个
  • 打开shennong metric merge发送逻辑
  • 若干启动参数调整

Bug Fix

  • 修复多Region发送时,查找本地配置识别Region错误,可能导致默认使用defaultEndpoint发送数据失败问题

0.10.4

功能

  • 优化tcmalloc hold内存不释放问题,定时调用ReleaseFreeMemory API
  • 优化文件轮转时reader对象释放处理逻辑
  • JSON日志解析失败时,完整上传整条日志时,修复因原地解析JSON导致数据被破坏问题
  • 优化checkpoint超时释放逻辑,注册目录时,扫描目录下文件,如果发现有checkpoint,则主动创建LogFileReader
  • 获取hostname所映射的ip是,过滤127...*(ACS场景)

0.10.2

功能

  • 支持JSON格式日志
  • 支持Delimiter格式日志
  • 支持日志自定义Tag
  • 启动后加载一遍符合配置要求的本地文件,解决部分情况下新增配置无法完整收集日志的问题
  • 支持日志解析异常时上传数据
  • 删除首行日志超时跳过逻辑,弱化5分钟日志超时丢弃的逻辑

Bug Fix

  • LogFileReader对象1天超时删除而导致的跨天不活跃文件数据无法收集
  • fix 0.10.0版本引入问题:当reader被删除时,reader指针仍在被process queue中数据所使用导致的coredump

0.10.1

功能

  • 弹内运行默认参数调整

Bug Fix

  • 修复0.10.0版本引入的单行日志超过512KB引起的内存泄漏问题

0.10.0

功能

  • 支持相同Logstore下不同Topic数据merge,降低写服务端TPS
  • 多线程数据解析
  • SDK支持lz4 string发送,去掉发送模块异常重试时的不必要资源开销
  • 文件日志数据收集支持按照时间片公平调度

Bug Fix

  • 主线程轻量化,将文件IO、解析操作移出,解决主线程忙时导致配置升级无法响应问题

0.9.11

功能

  • 阿里云官网安装包新增参数支持syslog接入源

Bug Fix

  • 处理syslog协议(TCP流式)数据写入时,极端情况下可能触发读写锁使用异常

0.9.10

功能

  • 支持syslog协议(TCP流式)数据写入

Bug Fix

0.9.9

功能

  • 根据系统的时区信息自动适配GMT时间
  • Logtail epoll轮询间隔从10秒缩短到1秒,缩短logtail异步加载配置的间隔

Bug Fix

0.9.8

功能

  • 支持ssl SNI,提升curl_logtail版本至7.46,配套使用ssl_logtail(1.0.0t),crypto_logtail静态库

Bug Fix

  • 修复0.9.4版本引入问题:网络异常时,logtail busy waiting导致的cpu 100%

0.9.7

功能

  • 每次启动logtail重新生成InstanceId上报服务端,解决ECS上不同实例公用镜像导致的心跳异常

Bug Fix

0.9.6

功能

  • 优化发送模块的异常重试逻辑,降低异常重试TPS对前端机的压力
  • LogGroup新增machine_uuid字段,与source字段平级

Bug Fix

  • 弹外ECS VM根据GetLogtailSecurity返回的aliuid在心跳中上报服务端

0.9.5

功能

  • 上报Linux random time UUID作为InstanceId
  • 兼容:弹外按照pub/corp的region tag设置阈值配置

Bug Fix

问题

  • 引入bug:连接网络失败是,buffer线程进入busy waiting,导致cpu 100%。

0.9.4

功能

  • 单线程异步发送,改lz4压缩
  • 支持LogCollection新的机器组管理方式,通过Aliuid向服务端请求AK
  • 支持多Endpoint数据发送
  • 支持多binary download url
  • 处理SIGTERM信号写checkpoint
  • 客户端兼容逻辑,服务端下发的aliuid订正到本机

Bug Fix

0.9.2

功能

  • 心跳主动上报UUID
  • 分离用户数据SLSClient和LogtailProfiling的SLSClient

Bug Fix

0.9.1

功能

  • metric支持发送最小化神农
  • 首行日志匹配失败时上报错误未包含错误日志样例

Bug Fix

  • logtail取系统时间会忽略掉夏令时标志
  • 主机UUID信息格式非标准时Logtail Crash

0.9.0

功能

  • 多线程发送
  • 支持GBK编码日志
  • metric数据的profiling信息上报
  • 提供配置最大监控深度功能
  • 支持GroupTopic

Bug Fix

  • 极端情况下判断日志边界引发的日志解析出错问题
  • 注册监控项时检查是否为目录
  • logtail非法map访问导致crash
  • logtail rpm 包判断状态,如果是stop状态,退出码不应该是0

0.8.12

功能

  • 处理飞天场景下,domain socket文件被删除导致metric数据无法收集的问题
  • 增强自升级的容错性,最大化自升级成功概率

Bug Fix

  • logtail获取首行日志时间出错情况下的日志丢失问题
  • logtail自身日志丢失问题
  • 配置升级可能会忽略最后一层路径的目录 timeout 属性 配置升级可能将最后一层路径的目录 timeout 属性忽略掉
  • epoll_wait失败后logtail工作进程的主线程hang住导致数据无法收集

0.8.11

功能

  • 正则匹配catch boost crash
  • logtail 向config server汇报os信息
  • 过滤gz等压缩格式文件的修改事件
  • 严格检查每条日志时间
  • 支持日志取系统时间
  • catch处理checkpoint文件时可能存在的异常

Bug Fix

  • logtail 监控超过 3000 个目录之后无法监控到这些目录下新建的日志文件
  • 处理回滚时计算topic出错
  • 对内rpm脚本yum update时停止进程

0.8.10

功能

  • 日志merge策略:4000条或2MB内
  • 支持软连接目录加入监控
  • configserver/dataserver配置协议补全与提示
  • 用户监控目录不存在时错误提示

Bug Fix

本文导读目录