MTAppenderFile 0.4.4

MTAppenderFile 0.4.4

MTHawkeyeEuan ChanHaowen Wu 维护。



  • Euan Chan

MTAppenderFile

基于腾讯 Mars xlog 的 *OS 高性能日志组件,用于 MTHawkeye 的性能记录数据持久化。

使用方法

使用 Objective-C API 创建一个 AppenderFile

MTAppenderFile *file = [[MTAppenderFile alloc] initWithFileDir:dirName name:fileName];
[file open];

然后使用 appendText:appendUTF8Text: 添加行数据。

[file appendText:@"test line"];
[file appendUTF8Text:"test line"];

详情

每个 AppenderFile 包含两个具有相同文件名但不同扩展名的文件。第一个是以 .mmap2 为扩展名的 mmap 文件,它是高速缓存文件,大小为 150KB。另一个是扩展名为 .mtlog 的文件,当 mmap 文件需要转储时,将日志数据传输到该文件。

例如,如果您创建了一个名为 records 的 AppenderFile,实际文件是:records.mmap2records.mtlog。在读取时,需要合并这两个文件,这是完整的记录。

读取存储数据的注意事项

  • 需要先读取两个文件:首先是 *.mmap2,然后是 *.mtlog,然后将内容合并在一起。
  • 读取 *.mmap2 文件时,只需要读取非脏数据。当遇到 \0\0\0 行时,已读取完整的 mmap 内容,之后的内应为脏数据,应忽略。

贡献

有关提交问题和拉取请求的更多信息,请参阅贡献指南

基于

  1. Tencent-Mars
  2. 微信终端跨平台组件 mars 系列(一) - 高性能日志模块xlog