| Index: google_apis/gcm/engine/gcm_store_impl.cc
|
| diff --git a/google_apis/gcm/engine/gcm_store_impl.cc b/google_apis/gcm/engine/gcm_store_impl.cc
|
| index 3436ba9d35f6d6c0d5b57e58f0a0e52f82fd74b4..b90630a0594a85ee85b54fae61ef238fbe5a2a7c 100644
|
| --- a/google_apis/gcm/engine/gcm_store_impl.cc
|
| +++ b/google_apis/gcm/engine/gcm_store_impl.cc
|
| @@ -17,6 +17,7 @@
|
| #include "base/strings/string_number_conversions.h"
|
| #include "base/strings/string_piece.h"
|
| #include "base/strings/string_tokenizer.h"
|
| +#include "base/strings/string_util.h"
|
| #include "base/thread_task_runner_handle.h"
|
| #include "base/time/time.h"
|
| #include "base/tracked_objects.h"
|
| @@ -336,6 +337,17 @@ void GCMStoreImpl::Backend::Load(const LoadCallback& callback) {
|
| return;
|
| }
|
|
|
| + // |result->registrations| contains both GCM registrations and InstanceID
|
| + // tokens. Count them separately.
|
| + int gcm_registration_count = 0;
|
| + int instance_id_token_count = 0;
|
| + for (const auto& registration : result->registrations) {
|
| + if (StartsWithASCII(registration.first, "iid-", true))
|
| + instance_id_token_count++;
|
| + else
|
| + gcm_registration_count++;
|
| + }
|
| +
|
| // Only record histograms if GCM had already been set up for this device.
|
| if (result->device_android_id != 0 && result->device_security_token != 0) {
|
| int64 file_size = 0;
|
| @@ -343,20 +355,27 @@ void GCMStoreImpl::Backend::Load(const LoadCallback& callback) {
|
| UMA_HISTOGRAM_COUNTS("GCM.StoreSizeKB",
|
| static_cast<int>(file_size / 1024));
|
| }
|
| - UMA_HISTOGRAM_COUNTS("GCM.RestoredRegistrations",
|
| - result->registrations.size());
|
| +
|
| + UMA_HISTOGRAM_COUNTS("GCM.RestoredRegistrations", gcm_registration_count);
|
| UMA_HISTOGRAM_COUNTS("GCM.RestoredOutgoingMessages",
|
| result->outgoing_messages.size());
|
| UMA_HISTOGRAM_COUNTS("GCM.RestoredIncomingMessages",
|
| result->incoming_messages.size());
|
| +
|
| + UMA_HISTOGRAM_COUNTS("InstanceID.RestoredTokenCount",
|
| + instance_id_token_count);
|
| + UMA_HISTOGRAM_COUNTS("InstanceID.RestoredIDCount",
|
| + result->instance_id_data.size());
|
| }
|
|
|
| - DVLOG(1) << "Succeeded in loading " << result->registrations.size()
|
| - << " registrations, "
|
| + DVLOG(1) << "Succeeded in loading "
|
| + << gcm_registration_count << " GCM registrations, "
|
| << result->incoming_messages.size()
|
| - << " unacknowledged incoming messages and "
|
| + << " unacknowledged incoming messages "
|
| << result->outgoing_messages.size()
|
| - << " unacknowledged outgoing messages.";
|
| + << " unacknowledged outgoing messages, "
|
| + << result->instance_id_data.size() << " Instance IDs, "
|
| + << instance_id_token_count << " InstanceID tokens.";
|
| result->success = true;
|
| foreground_task_runner_->PostTask(FROM_HERE,
|
| base::Bind(callback,
|
|
|