OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/download/download_stats.h" | 5 #include "content/browser/download/download_stats.h" |
6 | 6 |
7 #include "base/metrics/histogram.h" | 7 #include "base/metrics/histogram.h" |
8 #include "base/metrics/sparse_histogram.h" | 8 #include "base/metrics/sparse_histogram.h" |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "content/browser/download/download_resource_handler.h" | 10 #include "content/browser/download/download_resource_handler.h" |
(...skipping 593 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
604 UMA_HISTOGRAM_CUSTOM_COUNTS( | 604 UMA_HISTOGRAM_CUSTOM_COUNTS( |
605 "Download.BandwidthOverallBytesPerSecond", | 605 "Download.BandwidthOverallBytesPerSecond", |
606 (1000 * length / elapsed_time_ms), 1, 50000000, 50); | 606 (1000 * length / elapsed_time_ms), 1, 50000000, 50); |
607 UMA_HISTOGRAM_CUSTOM_COUNTS( | 607 UMA_HISTOGRAM_CUSTOM_COUNTS( |
608 "Download.BandwidthDiskBytesPerSecond", | 608 "Download.BandwidthDiskBytesPerSecond", |
609 (1000 * length / disk_write_time_ms), 1, 50000000, 50); | 609 (1000 * length / disk_write_time_ms), 1, 50000000, 50); |
610 UMA_HISTOGRAM_COUNTS_100("Download.DiskBandwidthUsedPercentage", | 610 UMA_HISTOGRAM_COUNTS_100("Download.DiskBandwidthUsedPercentage", |
611 disk_write_time_ms * 100 / elapsed_time_ms); | 611 disk_write_time_ms * 100 / elapsed_time_ms); |
612 } | 612 } |
613 | 613 |
| 614 void RecordDownloadFileRenameResult(base::TimeTicks time_of_first_failure, |
| 615 DownloadInterruptReason interrupt_reason) { |
| 616 if (time_of_first_failure.is_null()) |
| 617 return; |
| 618 base::TimeDelta interval = time_of_first_failure - base::TimeTicks::Now(); |
| 619 if (interrupt_reason == DOWNLOAD_INTERRUPT_REASON_NONE) { |
| 620 UMA_HISTOGRAM_TIMES("Download.TimeToRenameSuccessAfterInitialFailure", |
| 621 interval); |
| 622 } else { |
| 623 UMA_HISTOGRAM_TIMES("Download.TimeToRenameFailureAfterInitialFailure", |
| 624 interval); |
| 625 } |
| 626 } |
| 627 |
614 void RecordSavePackageEvent(SavePackageEvent event) { | 628 void RecordSavePackageEvent(SavePackageEvent event) { |
615 UMA_HISTOGRAM_ENUMERATION("Download.SavePackage", | 629 UMA_HISTOGRAM_ENUMERATION("Download.SavePackage", |
616 event, | 630 event, |
617 SAVE_PACKAGE_LAST_ENTRY); | 631 SAVE_PACKAGE_LAST_ENTRY); |
618 } | 632 } |
619 | 633 |
620 void RecordOriginStateOnResumption(bool is_partial, | 634 void RecordOriginStateOnResumption(bool is_partial, |
621 int state) { | 635 int state) { |
622 if (is_partial) | 636 if (is_partial) |
623 UMA_HISTOGRAM_ENUMERATION("Download.OriginStateOnPartialResumption", state, | 637 UMA_HISTOGRAM_ENUMERATION("Download.OriginStateOnPartialResumption", state, |
624 ORIGIN_STATE_ON_RESUMPTION_MAX); | 638 ORIGIN_STATE_ON_RESUMPTION_MAX); |
625 else | 639 else |
626 UMA_HISTOGRAM_ENUMERATION("Download.OriginStateOnFullResumption", state, | 640 UMA_HISTOGRAM_ENUMERATION("Download.OriginStateOnFullResumption", state, |
627 ORIGIN_STATE_ON_RESUMPTION_MAX); | 641 ORIGIN_STATE_ON_RESUMPTION_MAX); |
628 } | 642 } |
629 | 643 |
630 } // namespace content | 644 } // namespace content |
OLD | NEW |