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 "base/trace_event/trace_event.h" | 5 #include "base/trace_event/trace_event.h" |
6 | 6 |
7 #include <math.h> | 7 #include <math.h> |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
454 kFlowId, "step1"); | 454 kFlowId, "step1"); |
455 TRACE_EVENT_FLOW_END_BIND_TO_ENCLOSING0("all", | 455 TRACE_EVENT_FLOW_END_BIND_TO_ENCLOSING0("all", |
456 "TRACE_EVENT_FLOW_END_BIND_TO_ENCLOSING0 call", kFlowId); | 456 "TRACE_EVENT_FLOW_END_BIND_TO_ENCLOSING0 call", kFlowId); |
457 | 457 |
458 TRACE_COUNTER1("all", "TRACE_COUNTER1 call", 31415); | 458 TRACE_COUNTER1("all", "TRACE_COUNTER1 call", 31415); |
459 TRACE_COUNTER2("all", "TRACE_COUNTER2 call", | 459 TRACE_COUNTER2("all", "TRACE_COUNTER2 call", |
460 "a", 30000, | 460 "a", 30000, |
461 "b", 1415); | 461 "b", 1415); |
462 | 462 |
463 TRACE_COUNTER_WITH_TIMESTAMP1("all", "TRACE_COUNTER_WITH_TIMESTAMP1 call", | 463 TRACE_COUNTER_WITH_TIMESTAMP1("all", "TRACE_COUNTER_WITH_TIMESTAMP1 call", |
464 42, 31415); | 464 TimeTicks::FromInternalValue(42), 31415); |
465 TRACE_COUNTER_WITH_TIMESTAMP2("all", "TRACE_COUNTER_WITH_TIMESTAMP2 call", | 465 TRACE_COUNTER_WITH_TIMESTAMP2("all", "TRACE_COUNTER_WITH_TIMESTAMP2 call", |
466 42, "a", 30000, "b", 1415); | 466 TimeTicks::FromInternalValue(42), |
| 467 "a", 30000, "b", 1415); |
467 | 468 |
468 TRACE_COUNTER_ID1("all", "TRACE_COUNTER_ID1 call", 0x319009, 31415); | 469 TRACE_COUNTER_ID1("all", "TRACE_COUNTER_ID1 call", 0x319009, 31415); |
469 TRACE_COUNTER_ID2("all", "TRACE_COUNTER_ID2 call", 0x319009, | 470 TRACE_COUNTER_ID2("all", "TRACE_COUNTER_ID2 call", 0x319009, |
470 "a", 30000, "b", 1415); | 471 "a", 30000, "b", 1415); |
471 | 472 |
472 TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP0("all", | 473 TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP0("all", |
473 "TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call", | 474 "TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call", |
474 kAsyncId, kThreadId, 12345); | 475 kAsyncId, kThreadId, TimeTicks::FromInternalValue(12345)); |
475 TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP0("all", | 476 TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP0("all", |
476 "TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP0 call", | 477 "TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP0 call", |
477 kAsyncId, kThreadId, 23456); | 478 kAsyncId, kThreadId, TimeTicks::FromInternalValue(23456)); |
478 | 479 |
479 TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0("all", | 480 TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0("all", |
480 "TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call", | 481 "TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call", |
481 kAsyncId2, kThreadId, 34567); | 482 kAsyncId2, kThreadId, TimeTicks::FromInternalValue(34567)); |
482 TRACE_EVENT_ASYNC_STEP_PAST0("all", "TRACE_EVENT_ASYNC_STEP_PAST0 call", | 483 TRACE_EVENT_ASYNC_STEP_PAST0("all", "TRACE_EVENT_ASYNC_STEP_PAST0 call", |
483 kAsyncId2, "step_end1"); | 484 kAsyncId2, "step_end1"); |
484 TRACE_EVENT_ASYNC_STEP_PAST1("all", "TRACE_EVENT_ASYNC_STEP_PAST1 call", | 485 TRACE_EVENT_ASYNC_STEP_PAST1("all", "TRACE_EVENT_ASYNC_STEP_PAST1 call", |
485 kAsyncId2, "step_end2", "name1", "value1"); | 486 kAsyncId2, "step_end2", "name1", "value1"); |
486 | 487 |
487 TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0("all", | 488 TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0("all", |
488 "TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0 call", | 489 "TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0 call", |
489 kAsyncId2, kThreadId, 45678); | 490 kAsyncId2, kThreadId, TimeTicks::FromInternalValue(45678)); |
490 | 491 |
491 TRACE_EVENT_OBJECT_CREATED_WITH_ID("all", "tracked object 1", 0x42); | 492 TRACE_EVENT_OBJECT_CREATED_WITH_ID("all", "tracked object 1", 0x42); |
492 TRACE_EVENT_OBJECT_SNAPSHOT_WITH_ID( | 493 TRACE_EVENT_OBJECT_SNAPSHOT_WITH_ID( |
493 "all", "tracked object 1", 0x42, "hello"); | 494 "all", "tracked object 1", 0x42, "hello"); |
494 TRACE_EVENT_OBJECT_DELETED_WITH_ID("all", "tracked object 1", 0x42); | 495 TRACE_EVENT_OBJECT_DELETED_WITH_ID("all", "tracked object 1", 0x42); |
495 | 496 |
496 TraceScopedTrackableObject<int> trackable("all", "tracked object 2", | 497 TraceScopedTrackableObject<int> trackable("all", "tracked object 2", |
497 0x2128506); | 498 0x2128506); |
498 trackable.snapshot("world"); | 499 trackable.snapshot("world"); |
499 | 500 |
(...skipping 2306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2806 } | 2807 } |
2807 | 2808 |
2808 TEST_F(TraceEventTestFixture, TraceBufferVectorReportFull) { | 2809 TEST_F(TraceEventTestFixture, TraceBufferVectorReportFull) { |
2809 TraceLog* trace_log = TraceLog::GetInstance(); | 2810 TraceLog* trace_log = TraceLog::GetInstance(); |
2810 trace_log->SetEnabled( | 2811 trace_log->SetEnabled( |
2811 TraceConfig(kRecordAllCategoryFilter, ""), TraceLog::RECORDING_MODE); | 2812 TraceConfig(kRecordAllCategoryFilter, ""), TraceLog::RECORDING_MODE); |
2812 trace_log->logged_events_.reset( | 2813 trace_log->logged_events_.reset( |
2813 TraceBuffer::CreateTraceBufferVectorOfSize(100)); | 2814 TraceBuffer::CreateTraceBufferVectorOfSize(100)); |
2814 do { | 2815 do { |
2815 TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0( | 2816 TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0( |
2816 "all", "with_timestamp", 0, 0, TimeTicks::Now().ToInternalValue()); | 2817 "all", "with_timestamp", 0, 0, TimeTicks::Now()); |
2817 TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0( | 2818 TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0( |
2818 "all", "with_timestamp", 0, 0, TimeTicks::Now().ToInternalValue()); | 2819 "all", "with_timestamp", 0, 0, TimeTicks::Now()); |
2819 } while (!trace_log->BufferIsFull()); | 2820 } while (!trace_log->BufferIsFull()); |
2820 | 2821 |
2821 EndTraceAndFlush(); | 2822 EndTraceAndFlush(); |
2822 | 2823 |
2823 const DictionaryValue* trace_full_metadata = NULL; | 2824 const DictionaryValue* trace_full_metadata = NULL; |
2824 | 2825 |
2825 trace_full_metadata = FindTraceEntry(trace_parsed_, | 2826 trace_full_metadata = FindTraceEntry(trace_parsed_, |
2826 "overflowed_at_ts"); | 2827 "overflowed_at_ts"); |
2827 std::string phase; | 2828 std::string phase; |
2828 double buffer_limit_reached_timestamp = 0; | 2829 double buffer_limit_reached_timestamp = 0; |
(...skipping 371 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3200 BeginTrace(); | 3201 BeginTrace(); |
3201 // Let TraceLog timer start from 0. | 3202 // Let TraceLog timer start from 0. |
3202 TimeDelta time_offset = TimeTicks::Now() - TimeTicks(); | 3203 TimeDelta time_offset = TimeTicks::Now() - TimeTicks(); |
3203 TraceLog::GetInstance()->SetTimeOffset(time_offset); | 3204 TraceLog::GetInstance()->SetTimeOffset(time_offset); |
3204 | 3205 |
3205 { | 3206 { |
3206 TRACE_EVENT0("all", "duration1"); | 3207 TRACE_EVENT0("all", "duration1"); |
3207 TRACE_EVENT0("all", "duration2"); | 3208 TRACE_EVENT0("all", "duration2"); |
3208 } | 3209 } |
3209 TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0( | 3210 TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0( |
3210 "all", "with_timestamp", 0, 0, TimeTicks::Now().ToInternalValue()); | 3211 "all", "with_timestamp", 0, 0, TimeTicks::Now()); |
3211 TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0( | 3212 TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0( |
3212 "all", "with_timestamp", 0, 0, TimeTicks::Now().ToInternalValue()); | 3213 "all", "with_timestamp", 0, 0, TimeTicks::Now()); |
3213 | 3214 |
3214 EndTraceAndFlush(); | 3215 EndTraceAndFlush(); |
3215 DropTracedMetadataRecords(); | 3216 DropTracedMetadataRecords(); |
3216 | 3217 |
3217 double end_time = static_cast<double>( | 3218 double end_time = static_cast<double>( |
3218 (TimeTicks::Now() - time_offset).ToInternalValue()); | 3219 (TimeTicks::Now() - time_offset).ToInternalValue()); |
3219 double last_timestamp = 0; | 3220 double last_timestamp = 0; |
3220 for (size_t i = 0; i < trace_parsed_.GetSize(); ++i) { | 3221 for (size_t i = 0; i < trace_parsed_.GetSize(); ++i) { |
3221 const DictionaryValue* item; | 3222 const DictionaryValue* item; |
3222 EXPECT_TRUE(trace_parsed_.GetDictionary(i, &item)); | 3223 EXPECT_TRUE(trace_parsed_.GetDictionary(i, &item)); |
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3401 | 3402 |
3402 TEST_F(TraceEventTestFixture, ClockSyncEventsAreAlwaysAddedToTrace) { | 3403 TEST_F(TraceEventTestFixture, ClockSyncEventsAreAlwaysAddedToTrace) { |
3403 BeginSpecificTrace("-*"); | 3404 BeginSpecificTrace("-*"); |
3404 TRACE_EVENT_CLOCK_SYNC_RECEIVER(1); | 3405 TRACE_EVENT_CLOCK_SYNC_RECEIVER(1); |
3405 EndTraceAndFlush(); | 3406 EndTraceAndFlush(); |
3406 EXPECT_TRUE(FindNamePhase("clock_sync", "c")); | 3407 EXPECT_TRUE(FindNamePhase("clock_sync", "c")); |
3407 } | 3408 } |
3408 | 3409 |
3409 } // namespace trace_event | 3410 } // namespace trace_event |
3410 } // namespace base | 3411 } // namespace base |
OLD | NEW |