private ReplicaInfoBuilder(bool useFQDN)
 {
     environment   = "default";
     application   = EnvironmentInfo.Application;
     host          = useFQDN ? EnvironmentInfo.FQDN : EnvironmentInfo.Host;
     processName   = EnvironmentInfo.ProcessName;
     processId     = EnvironmentInfo.ProcessId;
     baseDirectory = EnvironmentInfo.BaseDirectory;
     commitHash    = AssemblyCommitHashExtractor.ExtractFromEntryAssembly();
     releaseDate   = AssemblyBuildTimeExtractor.ExtractFromEntryAssembly()?.ToString("O");
     dependencies  = AssemblyDependenciesExtractor.ExtractFromEntryAssembly();
 }
 private string ObtainCommitHash()
 => commitHash ?? (commitHash = options.CommitHashProvider?.Invoke() ?? AssemblyCommitHashExtractor.ExtractFromEntryAssembly());