private async Task WriteFileHeaderAsync() { var context = _pool.Get(); try { context.Writer.Write((uint)ServerReplayVersion.Initial); context.Writer.Write(_startTime.ToUnixTimeMilliseconds()); context.Writer.Write(DotnetUtils.GetVersion()); await WriteAsync(context.Stream !); } finally { _pool.Return(context); } }
private static int Main(string[] args) { #if DEBUG var logLevel = LogEventLevel.Debug; #else var logLevel = LogEventLevel.Information; #endif if (args.Contains("--verbose")) { logLevel = LogEventLevel.Verbose; } else if (args.Contains("--errors-only")) { logLevel = LogEventLevel.Error; } Log.Logger = new LoggerConfiguration() .MinimumLevel.Is(logLevel) #if DEBUG .MinimumLevel.Override("Microsoft", LogEventLevel.Debug) #else .MinimumLevel.Override("Microsoft", LogEventLevel.Information) #endif .Enrich.FromLogContext() .WriteTo.Console() .CreateLogger(); try { Log.Information("Starting Impostor v{0}", DotnetUtils.GetVersion()); CreateHostBuilder(args).Build().Run(); return(0); } catch (Exception ex) { Log.Fatal(ex, "Impostor terminated unexpectedly"); return(1); } finally { Log.CloseAndFlush(); } }