Loading src/com/android/settings/core/instrumentation/EventLogWriter.java +11 −0 Original line number Diff line number Diff line Loading @@ -17,8 +17,10 @@ package com.android.settings.core.instrumentation; import android.content.Context; import android.metrics.LogMaker; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto; /** * {@link LogWriter} that writes data to eventlog. Loading @@ -37,6 +39,15 @@ public class EventLogWriter implements LogWriter { MetricsLogger.action(context, category, ""); } public void actionWithSource(Context context, int source, int category) { final LogMaker logMaker = new LogMaker(category) .setType(MetricsProto.MetricsEvent.TYPE_ACTION); if (source != MetricsProto.MetricsEvent.VIEW_UNKNOWN) { logMaker.addTaggedData(MetricsProto.MetricsEvent.FIELD_CONTEXT, source); } MetricsLogger.action(logMaker); } public void action(Context context, int category, int value) { MetricsLogger.action(context, category, Integer.toString(value)); } Loading src/com/android/settings/core/instrumentation/LogWriter.java +5 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,11 @@ public interface LogWriter { */ void action(Context context, int category); /** * Logs an user action. */ void actionWithSource(Context context, int source, int category); /** * Logs an user action. */ Loading src/com/android/settings/core/instrumentation/MetricsFeatureProvider.java +72 −1 Original line number Diff line number Diff line Loading @@ -15,8 +15,79 @@ */ package com.android.settings.core.instrumentation; import android.content.Context; import android.metrics.LogMaker; import java.util.ArrayList; import java.util.List; /** * FeatureProvider for metrics. */ public interface MetricsFeatureProvider extends LogWriter { public class MetricsFeatureProvider { private List<LogWriter> mLoggerWriters; public MetricsFeatureProvider() { mLoggerWriters = new ArrayList<>(); installLogWriters(); } protected void installLogWriters() { mLoggerWriters.add(new EventLogWriter()); mLoggerWriters.add(new SettingSuggestionsLogWriter()); } public void visible(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.visible(context, category); } } public void hidden(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.hidden(context, category); } } public void actionWithSource(Context context, int source, int category) { for (LogWriter writer : mLoggerWriters) { writer.actionWithSource(context, source, category); } } public void action(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category); } } public void action(Context context, int category, int value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } public void action(Context context, int category, boolean value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } public void action(Context context, int category, String pkg) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, pkg); } } public void count(Context context, String name, int value) { for (LogWriter writer : mLoggerWriters) { writer.count(context, name, value); } } public void histogram(Context context, String name, int bucket) { for (LogWriter writer : mLoggerWriters) { writer.histogram(context, name, bucket); } } } src/com/android/settings/core/instrumentation/MetricsFeatureProviderImpl.javadeleted 100644 → 0 +0 −95 Original line number Diff line number Diff line /* * Copyright (C) 2016 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings.core.instrumentation; import android.content.Context; import java.util.ArrayList; import java.util.List; /** * Implementation for {@link MetricsFeatureProvider} */ public class MetricsFeatureProviderImpl implements MetricsFeatureProvider { private List<LogWriter> mLoggerWriters; public MetricsFeatureProviderImpl() { mLoggerWriters = new ArrayList<>(); installLogWriters(); } protected void installLogWriters() { mLoggerWriters.add(new EventLogWriter()); mLoggerWriters.add(new SettingSuggestionsLogWriter()); } @Override public void visible(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.visible(context, category); } } @Override public void hidden(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.hidden(context, category); } } @Override public void action(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category); } } @Override public void action(Context context, int category, int value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } @Override public void action(Context context, int category, boolean value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } @Override public void action(Context context, int category, String pkg) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, pkg); } } @Override public void count(Context context, String name, int value) { for (LogWriter writer : mLoggerWriters) { writer.count(context, name, value); } } @Override public void histogram(Context context, String name, int bucket) { for (LogWriter writer : mLoggerWriters) { writer.histogram(context, name, bucket); } } } src/com/android/settings/core/instrumentation/SettingSuggestionsLogWriter.java +6 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package com.android.settings.core.instrumentation; import android.content.Context; import android.metrics.LogMaker; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.MetricsLogger; import com.android.settings.suggestions.EventStore; Loading @@ -40,6 +42,10 @@ public class SettingSuggestionsLogWriter implements LogWriter { public void action(Context context, int category) { } @Override public void actionWithSource(Context context, int source, int category) { } @Override public void action(Context context, int category, int value) { } Loading Loading
src/com/android/settings/core/instrumentation/EventLogWriter.java +11 −0 Original line number Diff line number Diff line Loading @@ -17,8 +17,10 @@ package com.android.settings.core.instrumentation; import android.content.Context; import android.metrics.LogMaker; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto; /** * {@link LogWriter} that writes data to eventlog. Loading @@ -37,6 +39,15 @@ public class EventLogWriter implements LogWriter { MetricsLogger.action(context, category, ""); } public void actionWithSource(Context context, int source, int category) { final LogMaker logMaker = new LogMaker(category) .setType(MetricsProto.MetricsEvent.TYPE_ACTION); if (source != MetricsProto.MetricsEvent.VIEW_UNKNOWN) { logMaker.addTaggedData(MetricsProto.MetricsEvent.FIELD_CONTEXT, source); } MetricsLogger.action(logMaker); } public void action(Context context, int category, int value) { MetricsLogger.action(context, category, Integer.toString(value)); } Loading
src/com/android/settings/core/instrumentation/LogWriter.java +5 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,11 @@ public interface LogWriter { */ void action(Context context, int category); /** * Logs an user action. */ void actionWithSource(Context context, int source, int category); /** * Logs an user action. */ Loading
src/com/android/settings/core/instrumentation/MetricsFeatureProvider.java +72 −1 Original line number Diff line number Diff line Loading @@ -15,8 +15,79 @@ */ package com.android.settings.core.instrumentation; import android.content.Context; import android.metrics.LogMaker; import java.util.ArrayList; import java.util.List; /** * FeatureProvider for metrics. */ public interface MetricsFeatureProvider extends LogWriter { public class MetricsFeatureProvider { private List<LogWriter> mLoggerWriters; public MetricsFeatureProvider() { mLoggerWriters = new ArrayList<>(); installLogWriters(); } protected void installLogWriters() { mLoggerWriters.add(new EventLogWriter()); mLoggerWriters.add(new SettingSuggestionsLogWriter()); } public void visible(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.visible(context, category); } } public void hidden(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.hidden(context, category); } } public void actionWithSource(Context context, int source, int category) { for (LogWriter writer : mLoggerWriters) { writer.actionWithSource(context, source, category); } } public void action(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category); } } public void action(Context context, int category, int value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } public void action(Context context, int category, boolean value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } public void action(Context context, int category, String pkg) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, pkg); } } public void count(Context context, String name, int value) { for (LogWriter writer : mLoggerWriters) { writer.count(context, name, value); } } public void histogram(Context context, String name, int bucket) { for (LogWriter writer : mLoggerWriters) { writer.histogram(context, name, bucket); } } }
src/com/android/settings/core/instrumentation/MetricsFeatureProviderImpl.javadeleted 100644 → 0 +0 −95 Original line number Diff line number Diff line /* * Copyright (C) 2016 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings.core.instrumentation; import android.content.Context; import java.util.ArrayList; import java.util.List; /** * Implementation for {@link MetricsFeatureProvider} */ public class MetricsFeatureProviderImpl implements MetricsFeatureProvider { private List<LogWriter> mLoggerWriters; public MetricsFeatureProviderImpl() { mLoggerWriters = new ArrayList<>(); installLogWriters(); } protected void installLogWriters() { mLoggerWriters.add(new EventLogWriter()); mLoggerWriters.add(new SettingSuggestionsLogWriter()); } @Override public void visible(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.visible(context, category); } } @Override public void hidden(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.hidden(context, category); } } @Override public void action(Context context, int category) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category); } } @Override public void action(Context context, int category, int value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } @Override public void action(Context context, int category, boolean value) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, value); } } @Override public void action(Context context, int category, String pkg) { for (LogWriter writer : mLoggerWriters) { writer.action(context, category, pkg); } } @Override public void count(Context context, String name, int value) { for (LogWriter writer : mLoggerWriters) { writer.count(context, name, value); } } @Override public void histogram(Context context, String name, int bucket) { for (LogWriter writer : mLoggerWriters) { writer.histogram(context, name, bucket); } } }
src/com/android/settings/core/instrumentation/SettingSuggestionsLogWriter.java +6 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package com.android.settings.core.instrumentation; import android.content.Context; import android.metrics.LogMaker; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.MetricsLogger; import com.android.settings.suggestions.EventStore; Loading @@ -40,6 +42,10 @@ public class SettingSuggestionsLogWriter implements LogWriter { public void action(Context context, int category) { } @Override public void actionWithSource(Context context, int source, int category) { } @Override public void action(Context context, int category, int value) { } Loading