Dump name server logs if resolve fails (#28192)

* Dump name server logs if resolve fails

* Revert error check
This commit is contained in:
Christopher Batey 2019-11-20 16:59:46 +00:00 committed by GitHub
parent ffde39c5c3
commit 4bf94fee2d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 1 deletions

View file

@ -181,7 +181,13 @@ class AsyncDnsResolverIntegrationSpec extends AkkaSpec(s"""
} }
def resolve(name: String, requestType: RequestType = Ip()): DnsProtocol.Resolved = { def resolve(name: String, requestType: RequestType = Ip()): DnsProtocol.Resolved = {
try {
(IO(Dns) ? DnsProtocol.Resolve(name, requestType)).mapTo[DnsProtocol.Resolved].futureValue (IO(Dns) ? DnsProtocol.Resolve(name, requestType)).mapTo[DnsProtocol.Resolved].futureValue
} catch {
case e: Throwable =>
dumpNameserverLogs()
throw e
}
} }
} }

View file

@ -80,6 +80,11 @@ trait DockerBindDnsService extends Eventually { self: AkkaSpec =>
} }
} }
def dumpNameserverLogs(): Unit = {
id.foreach(id => log.info("Nameserver std out: {} ", client.logs(id, LogsParam.stdout()).readFully()))
id.foreach(id => log.info("Nameserver std err: {} ", client.logs(id, LogsParam.stderr()).readFully()))
}
override def afterTermination(): Unit = { override def afterTermination(): Unit = {
self.afterTermination() self.afterTermination()
id.foreach(client.killContainer) id.foreach(client.killContainer)