mirror of
https://github.com/google/nomulus.git
synced 2025-07-06 19:23:31 +02:00
Improve logging messages and error level for DeleteExpiredDomainsActions (#1010)
* Improve logging messages and error level for DeleteExpiredDomainsActions
This commit is contained in:
parent
cdbecac103
commit
58e561704c
1 changed files with 18 additions and 5 deletions
|
@ -44,6 +44,7 @@ import google.registry.request.lock.LockHandler;
|
||||||
import google.registry.util.Clock;
|
import google.registry.util.Clock;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.concurrent.Callable;
|
import java.util.concurrent.Callable;
|
||||||
|
import java.util.logging.Level;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import org.joda.time.DateTime;
|
import org.joda.time.DateTime;
|
||||||
import org.joda.time.Duration;
|
import org.joda.time.Duration;
|
||||||
|
@ -141,12 +142,23 @@ public class DeleteExpiredDomainsAction implements Runnable {
|
||||||
String.join(
|
String.join(
|
||||||
", ",
|
", ",
|
||||||
domainsToDelete.stream().map(DomainBase::getDomainName).collect(toImmutableList())));
|
domainsToDelete.stream().map(DomainBase::getDomainName).collect(toImmutableList())));
|
||||||
domainsToDelete.forEach(this::runDomainDeleteFlow);
|
int successes = 0;
|
||||||
logger.atInfo().log("Finished deleting domains.");
|
for (DomainBase domain : domainsToDelete) {
|
||||||
response.setPayload("Finished deleting domains.");
|
if (runDomainDeleteFlow(domain)) {
|
||||||
|
successes++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int failures = domainsToDelete.size() - successes;
|
||||||
|
String msg =
|
||||||
|
String.format(
|
||||||
|
"Finished; %d domains were successfully deleted and %d errored out.",
|
||||||
|
successes, failures);
|
||||||
|
logger.at(failures == 0 ? Level.INFO : Level.SEVERE).log(msg);
|
||||||
|
response.setPayload(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void runDomainDeleteFlow(DomainBase domain) {
|
/** Runs the actual domain delete flow and returns whether the deletion was successful. */
|
||||||
|
private boolean runDomainDeleteFlow(DomainBase domain) {
|
||||||
logger.atInfo().log("Attempting to delete domain %s", domain.getDomainName());
|
logger.atInfo().log("Attempting to delete domain %s", domain.getDomainName());
|
||||||
// Create a new transaction that the flow's execution will be enlisted in that loads the domain
|
// Create a new transaction that the flow's execution will be enlisted in that loads the domain
|
||||||
// transactionally. This way we can ensure that nothing else has modified the domain in question
|
// transactionally. This way we can ensure that nothing else has modified the domain in question
|
||||||
|
@ -185,10 +197,11 @@ public class DeleteExpiredDomainsAction implements Runnable {
|
||||||
if (eppOutput.get().isSuccess()) {
|
if (eppOutput.get().isSuccess()) {
|
||||||
logger.atInfo().log("Successfully deleted domain %s", domain.getDomainName());
|
logger.atInfo().log("Successfully deleted domain %s", domain.getDomainName());
|
||||||
} else {
|
} else {
|
||||||
logger.atWarning().log(
|
logger.atSevere().log(
|
||||||
"Failed to delete domain %s; EPP response:\n\n%s",
|
"Failed to delete domain %s; EPP response:\n\n%s",
|
||||||
domain.getDomainName(), new String(marshalWithLenientRetry(eppOutput.get()), UTF_8));
|
domain.getDomainName(), new String(marshalWithLenientRetry(eppOutput.get()), UTF_8));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return eppOutput.map(EppOutput::isSuccess).orElse(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue