(* * Copyright (c) 2018-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. *) open! IStd module Json : sig (** only what we need for now *) type t = [`Int of int | `String of string | `Assoc of (string * t) list | `List of t list] end type scope = Global | Process type logger val log_begin_event : logger -> ?timestamp:Mtime.t -> ?categories:string list -> ?arguments:(string * Json.t) list -> name:string -> unit -> unit val log_end_event : logger -> ?timestamp:Mtime.t -> ?arguments:(string * Json.t) list -> unit -> unit val log_complete_event : logger -> timestamp:Mtime.t -> ?duration:Mtime.Span.t -> ?categories:string list -> ?arguments:(string * Json.t) list -> name:string -> unit -> unit [@@warning "-32"] val log_instant_event : logger -> ?timestamp:Mtime.t -> name:string -> scope -> unit val log : (logger -> unit) -> unit