项目作者: ytake

项目描述 :
Send logs to files For HHVM/Hack
高级语言: Hack
项目地址: git://github.com/ytake/hack-logging.git
创建时间: 2019-01-01T16:49:10Z
项目社区:https://github.com/ytake/hack-logging

开源协议:MIT License

下载


hack-logging

Build Status

Requirements

HHVM 4.95 and above.

Usage

  1. $ composer require hack-logging/hack-logging

StdHandler

  1. use namespace HackLogging;
  2. use namespace HH\Lib\IO;
  3. async function fvAsync(): Awaitable<void> {
  4. list($read, $write) = IO\pipe();
  5. $log = new HackLogging\Logger('hack-logging', vec[
  6. new HackLogging\Handler\StdHandler($write),
  7. ]);
  8. await $log->writeAsync(
  9. HackLogging\LogLevel::DEBUG,
  10. 'hacklogging-test',
  11. );
  12. }

FilesystemHandler

  1. use namespace HackLogging;
  2. use namespace HH\Lib\File;
  3. use function bin2hey();
  4. use function random_bytes;
  5. use function sys_get_temp_dir;
  6. async function fvAsync(): Awaitable<void> {
  7. $filename = sys_get_temp_dir() . '/' . bin2hex(random_bytes(16));
  8. $file = File\open_write_only($filename);
  9. $log = new HackLogging\Logger('hack-logging', vec[
  10. new HackLogging\Handler\FilesystemHandler($file),
  11. ]);
  12. await $log->writeAsync(
  13. HackLogging\LogLevel::DEBUG,
  14. 'hacklogging-test',
  15. dict[
  16. 'context' => vec['nice'],
  17. ],
  18. );
  19. }