Migrate to flogger (red)

This is a 'red' Flogger migration CL. Red CLs contain changes which are
likely not to work without manual intervention.

Note that it may not even be possible to directly migrate the logger
usage in this CL to the Flogger API and some additional refactoring may
be required. If this is the case, please note that it should be safe to
submit any outstanding 'green' and 'yellow' CLs prior to tackling this.

If you feel that your use case is not covered by the existing Flogger API
please raise a feature request at []and
revert this CL.

For more information, see []
Base CL: 197826149

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=198463651
This commit is contained in:
jianglai 2018-05-29 15:00:54 -07:00
parent 65ac28fae5
commit 1f1705aaa6
16 changed files with 57 additions and 33 deletions

View file

@ -13,6 +13,8 @@ java_library(
"@com_google_appengine_tools_appengine_gcs_client",
"@com_google_code_findbugs_jsr305",
"@com_google_dagger",
"@com_google_flogger",
"@com_google_flogger_system_backend",
"@com_google_guava",
],
)

View file

@ -32,6 +32,8 @@ java_library(
"@com_google_auto_value",
"@com_google_code_findbugs_jsr305",
"@com_google_dagger",
"@com_google_flogger",
"@com_google_flogger_system_backend",
"@com_google_guava",
"@com_google_re2j",
"@javax_servlet_api",

View file

@ -26,7 +26,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.ImmutableSetMultimap;
import com.google.common.collect.Multimaps;
import com.google.common.logging.FormattingLogger;
import com.google.common.flogger.FluentLogger;
import google.registry.config.RegistryConfig.Config;
import google.registry.mapreduce.MapreduceRunner;
import google.registry.mapreduce.inputs.EppResourceInputs;
@ -194,7 +194,7 @@ public final class RdeStagingAction implements Runnable {
public static final String PATH = "/_dr/task/rdeStaging";
private static final FormattingLogger logger = FormattingLogger.getLoggerForCallerClass();
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
@Inject Clock clock;
@Inject PendingDepositChecker pendingDepositChecker;
@ -218,12 +218,14 @@ public final class RdeStagingAction implements Runnable {
manual ? getManualPendingDeposits() : getStandardPendingDeposits();
if (pendings.isEmpty()) {
String message = "Nothing needs to be deposited";
logger.info(message);
logger.atInfo().log(message);
response.setStatus(SC_NO_CONTENT);
response.setPayload(message);
return;
}
pendings.values().stream().map(Object::toString).forEach(logger::info);
for (PendingDeposit pending : pendings.values()) {
logger.atInfo().log("Pending deposit: %s", pending);
}
RdeStagingMapper mapper = new RdeStagingMapper(lenient ? LENIENT : STRICT, pendings);
response.sendJavaScriptRedirect(createJobPath(mrRunner
@ -261,7 +263,8 @@ public final class RdeStagingAction implements Runnable {
pendingDepositChecker.getTldsAndWatermarksPendingDepositForRdeAndBrda(),
pending -> {
if (clock.nowUtc().isBefore(pending.watermark().plus(transactionCooldown))) {
logger.infofmt("Ignoring within %s cooldown: %s", transactionCooldown, pending);
logger.atInfo().log(
"Ignoring within %s cooldown: %s", transactionCooldown, pending);
return false;
} else {
return true;

View file

@ -29,6 +29,8 @@ java_library(
"@com_google_appengine_tools_appengine_pipeline",
"@com_google_code_findbugs_jsr305",
"@com_google_dagger",
"@com_google_flogger",
"@com_google_flogger_system_backend",
"@com_google_guava",
"@javax_servlet_api",
"@joda_time",

View file

@ -14,11 +14,12 @@
package google.registry.tools.server;
import static com.google.common.flogger.LazyArgs.lazy;
import com.google.common.collect.ImmutableMap;
import com.google.common.logging.FormattingLogger;
import com.google.common.flogger.FluentLogger;
import google.registry.request.JsonResponse;
import google.registry.request.Parameter;
import java.util.logging.Level;
import javax.inject.Inject;
/**
@ -26,7 +27,7 @@ import javax.inject.Inject;
*/
public abstract class CreateOrUpdatePremiumListAction implements Runnable {
protected static final FormattingLogger logger = FormattingLogger.getLoggerForCallerClass();
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
private static final int MAX_LOGGING_PREMIUM_LIST_LENGTH = 1000;
@ -42,23 +43,25 @@ public abstract class CreateOrUpdatePremiumListAction implements Runnable {
try {
savePremiumList();
} catch (IllegalArgumentException e) {
logger.info(e, "Usage error in attempting to save premium list from nomulus tool command");
logger.atInfo().withCause(e).log(
"Usage error in attempting to save premium list from nomulus tool command");
response.setPayload(ImmutableMap.of("error", e.toString(), "status", "error"));
} catch (Exception e) {
logger.severe(e, "Unexpected error saving premium list from nomulus tool command");
logger.atSevere().withCause(e).log(
"Unexpected error saving premium list from nomulus tool command");
response.setPayload(ImmutableMap.of("error", e.toString(), "status", "error"));
}
}
/** Logs the premium list data at INFO, truncated if too long. */
void logInputData() {
if (logger.isLoggable(Level.INFO)) {
logger.infofmt(
logger.atInfo().log(
"Received the following input data: %s",
lazy(
() ->
(inputData.length() < MAX_LOGGING_PREMIUM_LIST_LENGTH)
? inputData
: (inputData.substring(0, MAX_LOGGING_PREMIUM_LIST_LENGTH) + "<truncated>"));
}
: (inputData.substring(0, MAX_LOGGING_PREMIUM_LIST_LENGTH) + "<truncated>")));
}
/** Creates a new premium list or updates an existing one. */

View file

@ -22,6 +22,7 @@ import static google.registry.request.Action.Method.POST;
import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableMap;
import com.google.common.flogger.FluentLogger;
import google.registry.model.registry.label.PremiumList;
import google.registry.request.Action;
import google.registry.request.Parameter;
@ -40,6 +41,8 @@ import javax.inject.Inject;
)
public class CreatePremiumListAction extends CreateOrUpdatePremiumListAction {
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
public static final String OVERRIDE_PARAM = "override";
public static final String PATH = "/_dr/admin/createPremiumList";
@ -54,7 +57,7 @@ public class CreatePremiumListAction extends CreateOrUpdatePremiumListAction {
assertTldExists(name);
}
logger.infofmt("Saving premium list for TLD %s", name);
logger.atInfo().log("Saving premium list for TLD %s", name);
logInputData();
List<String> inputDataPreProcessed =
Splitter.on('\n').omitEmptyStrings().splitToList(inputData);
@ -65,7 +68,7 @@ public class CreatePremiumListAction extends CreateOrUpdatePremiumListAction {
String.format(
"Saved premium list %s with %d entries",
premiumList.getName(), inputDataPreProcessed.size());
logger.info(message);
logger.atInfo().log(message);
response.setPayload(ImmutableMap.of("status", "success", "message", message));
}
}

View file

@ -20,6 +20,7 @@ import static google.registry.request.Action.Method.POST;
import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableMap;
import com.google.common.flogger.FluentLogger;
import google.registry.model.registry.label.PremiumList;
import google.registry.request.Action;
import google.registry.request.auth.Auth;
@ -38,6 +39,8 @@ import javax.inject.Inject;
)
public class UpdatePremiumListAction extends CreateOrUpdatePremiumListAction {
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
public static final String PATH = "/_dr/admin/updatePremiumList";
@Inject UpdatePremiumListAction() {}
@ -50,7 +53,7 @@ public class UpdatePremiumListAction extends CreateOrUpdatePremiumListAction {
"Could not update premium list %s because it doesn't exist.",
name);
logger.infofmt("Updating premium list for TLD %s", name);
logger.atInfo().log("Updating premium list for TLD %s", name);
logInputData();
List<String> inputDataPreProcessed =
Splitter.on('\n').omitEmptyStrings().splitToList(inputData);
@ -61,7 +64,7 @@ public class UpdatePremiumListAction extends CreateOrUpdatePremiumListAction {
String.format(
"Updated premium list %s with %d entries.",
newPremiumList.getName(), inputDataPreProcessed.size());
logger.info(message);
logger.atInfo().log(message);
response.setPayload(ImmutableMap.of("status", "success", "message", message));
}
}

View file

@ -21,6 +21,8 @@ java_library(
"@com_google_appengine_api_1_0_sdk//:testonly",
"@com_google_appengine_tools_appengine_gcs_client",
"@com_google_code_findbugs_jsr305",
"@com_google_flogger",
"@com_google_flogger_system_backend",
"@com_google_guava",
"@com_google_guava_testlib",
"@com_google_truth",

View file

@ -32,6 +32,7 @@ import com.google.appengine.tools.cloudstorage.GcsServiceFactory;
import com.google.appengine.tools.cloudstorage.ListItem;
import com.google.appengine.tools.cloudstorage.ListResult;
import com.google.common.collect.Iterators;
import com.google.common.flogger.LoggerConfig;
import com.google.common.testing.TestLogHandler;
import google.registry.testing.AppEngineRule;
import java.io.IOException;
@ -42,7 +43,6 @@ import java.util.Iterator;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.logging.LogRecord;
import java.util.logging.Logger;
import org.joda.time.DateTime;
import org.junit.Before;
import org.junit.Rule;
@ -79,7 +79,7 @@ public class GcsDiffFileListerTest {
.build(),
ByteBuffer.wrap(new byte[]{1, 2, 3}));
}
Logger.getLogger(GcsDiffFileLister.class.getCanonicalName()).addHandler(logHandler);
LoggerConfig.getConfig(GcsDiffFileLister.class).addHandler(logHandler);
}
private Iterable<DateTime> extractTimesFromDiffFiles(List<GcsFileMetadata> diffFiles) {

View file

@ -35,6 +35,8 @@ java_library(
"@com_google_appengine_tools_appengine_gcs_client",
"@com_google_code_findbugs_jsr305",
"@com_google_dagger",
"@com_google_flogger",
"@com_google_flogger_system_backend",
"@com_google_guava",
"@com_google_http_client",
"@com_google_re2j",

View file

@ -34,6 +34,7 @@ import com.google.api.services.bigquery.model.JobStatus;
import com.google.appengine.api.taskqueue.TaskOptions;
import com.google.appengine.api.taskqueue.TaskOptions.Method;
import com.google.appengine.api.taskqueue.dev.QueueStateInfo.TaskStateInfo;
import com.google.common.flogger.LoggerConfig;
import google.registry.export.BigqueryPollJobAction.BigqueryPollJobEnqueuer;
import google.registry.request.HttpException.BadRequestException;
import google.registry.request.HttpException.NotModifiedException;
@ -52,7 +53,6 @@ import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.logging.Level;
import java.util.logging.LogRecord;
import java.util.logging.Logger;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@ -90,7 +90,7 @@ public class BigqueryPollJobActionTest {
action.projectId = PROJECT_ID;
action.jobId = JOB_ID;
action.chainedQueueName = () -> CHAINED_QUEUE_NAME;
Logger.getLogger(BigqueryPollJobAction.class.getName()).addHandler(logHandler);
LoggerConfig.getConfig(BigqueryPollJobAction.class).addHandler(logHandler);
}
private static TaskMatcher newPollJobTaskMatcher(String method) throws Exception {

View file

@ -43,6 +43,8 @@ java_library(
"@com_google_appengine_testing",
"@com_google_code_findbugs_jsr305",
"@com_google_dagger",
"@com_google_flogger",
"@com_google_flogger_system_backend",
"@com_google_guava",
"@com_google_guava_testlib",
"@com_google_monitoring_client_metrics",

View file

@ -20,6 +20,7 @@ import static google.registry.testing.JUnitBackports.assertThrows;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.common.flogger.LoggerConfig;
import com.google.common.testing.TestLogHandler;
import google.registry.flows.EppException.UnimplementedExtensionException;
import google.registry.flows.ExtensionManager.UndeclaredServiceExtensionException;
@ -37,7 +38,6 @@ import google.registry.model.eppinput.EppInput.CommandExtension;
import google.registry.testing.AppEngineRule;
import google.registry.util.TypeUtils;
import java.util.logging.LogRecord;
import java.util.logging.Logger;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
@ -70,7 +70,7 @@ public class ExtensionManagerTest {
@Test
public void testUndeclaredExtensionsLogged() throws Exception {
TestLogHandler handler = new TestLogHandler();
Logger.getLogger(ExtensionManager.class.getCanonicalName()).addHandler(handler);
LoggerConfig.getConfig(ExtensionManager.class).addHandler(handler);
ExtensionManager manager =
new TestInstanceBuilder()
.setEppRequestSource(EppRequestSource.TOOL)

View file

@ -23,6 +23,7 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import com.google.common.collect.ImmutableList;
import com.google.common.flogger.LoggerConfig;
import com.google.common.testing.TestLogHandler;
import google.registry.flows.annotations.ReportingSpec;
import google.registry.model.eppcommon.Trid;
@ -33,7 +34,6 @@ import google.registry.model.reporting.IcannReportingTypes.ActivityReportField;
import google.registry.testing.ShardableTestCase;
import java.util.Map;
import java.util.Optional;
import java.util.logging.Logger;
import org.json.simple.JSONValue;
import org.junit.Before;
import org.junit.Test;
@ -64,7 +64,7 @@ public class FlowReporterTest extends ShardableTestCase {
@Before
public void before() {
Logger.getLogger(FlowReporter.class.getCanonicalName()).addHandler(handler);
LoggerConfig.getConfig(FlowReporter.class).addHandler(handler);
flowReporter.trid = Trid.create("client-123", "server-456");
flowReporter.clientId = "TheRegistrar";
flowReporter.inputXmlBytes = "<xml/>".getBytes(UTF_8);

View file

@ -27,6 +27,7 @@ import com.google.appengine.api.users.User;
import com.google.common.base.Joiner;
import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableSet;
import com.google.common.flogger.LoggerConfig;
import com.google.common.testing.TestLogHandler;
import google.registry.model.eppcommon.Trid;
import google.registry.model.eppoutput.EppOutput.ResponseOrGreeting;
@ -38,7 +39,6 @@ import google.registry.testing.FakeHttpSession;
import google.registry.testing.ShardableTestCase;
import java.util.List;
import java.util.Optional;
import java.util.logging.Logger;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@ -68,7 +68,7 @@ public class FlowRunnerTest extends ShardableTestCase {
@Before
public void before() {
Logger.getLogger(FlowRunner.class.getCanonicalName()).addHandler(handler);
LoggerConfig.getConfig(FlowRunner.class).addHandler(handler);
flowRunner.clientId = "TheRegistrar";
flowRunner.credentials = new PasswordOnlyTransportCredentials();
flowRunner.eppRequestSource = EppRequestSource.UNIT_TEST;

View file

@ -27,6 +27,7 @@ import static google.registry.testing.TaskQueueHelper.assertTasksEnqueued;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Streams;
import com.google.common.flogger.LoggerConfig;
import com.google.common.testing.TestLogHandler;
import com.googlecode.objectify.Key;
import google.registry.flows.FlowUtils.NotLoggedInException;
@ -45,7 +46,6 @@ import google.registry.testing.TaskQueueHelper.TaskMatcher;
import google.registry.util.TypeUtils.TypeInstantiator;
import java.util.Optional;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.joda.time.DateTime;
import org.joda.time.Duration;
import org.json.simple.JSONValue;
@ -68,7 +68,7 @@ public abstract class ResourceFlowTestCase<F extends Flow, R extends EppResource
// Attach TestLogHandler to the root logger so it has access to all log messages.
// Note that in theory for assertIcannReportingActivityFieldLogged() below it would suffice to
// attach it only to the FlowRunner logger, but for some reason this doesn't work for all flows.
Logger.getLogger("").addHandler(logHandler);
LoggerConfig.getConfig("").addHandler(logHandler);
}
protected R reloadResourceByForeignKey(DateTime now) throws Exception {