Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(386)

Side by Side Diff: base/trace_event/trace_event_impl.h

Issue 1126553005: Set the content/ trace event PII whitelist to be the arg-filtering predicate in TraceLog (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@final_dropargs_predicate
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | base/trace_event/trace_event_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 5
6 #ifndef BASE_TRACE_EVENT_TRACE_EVENT_IMPL_H_ 6 #ifndef BASE_TRACE_EVENT_TRACE_EVENT_IMPL_H_
7 #define BASE_TRACE_EVENT_TRACE_EVENT_IMPL_H_ 7 #define BASE_TRACE_EVENT_TRACE_EVENT_IMPL_H_
8 8
9 #include <stack> 9 #include <stack>
10 #include <string> 10 #include <string>
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
379 ECHO_TO_CONSOLE, 379 ECHO_TO_CONSOLE,
380 380
381 // Record until the trace buffer is full, but with a huge buffer size. 381 // Record until the trace buffer is full, but with a huge buffer size.
382 RECORD_AS_MUCH_AS_POSSIBLE 382 RECORD_AS_MUCH_AS_POSSIBLE
383 }; 383 };
384 384
385 struct BASE_EXPORT TraceOptions { 385 struct BASE_EXPORT TraceOptions {
386 TraceOptions() 386 TraceOptions()
387 : record_mode(RECORD_UNTIL_FULL), 387 : record_mode(RECORD_UNTIL_FULL),
388 enable_sampling(false), 388 enable_sampling(false),
389 enable_systrace(false) {} 389 enable_systrace(false),
390 enable_args_whitelist(false) {}
390 391
391 explicit TraceOptions(TraceRecordMode record_mode) 392 explicit TraceOptions(TraceRecordMode record_mode)
392 : record_mode(record_mode), 393 : record_mode(record_mode),
393 enable_sampling(false), 394 enable_sampling(false),
394 enable_systrace(false) {} 395 enable_systrace(false),
396 enable_args_whitelist(false) {}
395 397
396 // |options_string| is a comma-delimited list of trace options. 398 // |options_string| is a comma-delimited list of trace options.
397 // Possible options are: "record-until-full", "record-continuously", 399 // Possible options are: "record-until-full", "record-continuously",
398 // "trace-to-console", "enable-sampling" and "enable-systrace". 400 // "trace-to-console", "enable-sampling" and "enable-systrace".
399 // The first 3 options are trace recoding modes and hence 401 // The first 3 options are trace recoding modes and hence
400 // mutually exclusive. If more than one trace recording modes appear in the 402 // mutually exclusive. If more than one trace recording modes appear in the
401 // options_string, the last one takes precedence. If none of the trace 403 // options_string, the last one takes precedence. If none of the trace
402 // recording mode is specified, recording mode is RECORD_UNTIL_FULL. 404 // recording mode is specified, recording mode is RECORD_UNTIL_FULL.
403 // 405 //
404 // The trace option will first be reset to the default option 406 // The trace option will first be reset to the default option
(...skipping 10 matching lines...) Expand all
415 // will set ECHO_TO_CONSOLE as the recording mode. 417 // will set ECHO_TO_CONSOLE as the recording mode.
416 // 418 //
417 // Returns true on success. 419 // Returns true on success.
418 bool SetFromString(const std::string& options_string); 420 bool SetFromString(const std::string& options_string);
419 421
420 std::string ToString() const; 422 std::string ToString() const;
421 423
422 TraceRecordMode record_mode; 424 TraceRecordMode record_mode;
423 bool enable_sampling; 425 bool enable_sampling;
424 bool enable_systrace; 426 bool enable_systrace;
427 bool enable_args_whitelist;
425 }; 428 };
426 429
427 struct BASE_EXPORT TraceLogStatus { 430 struct BASE_EXPORT TraceLogStatus {
428 TraceLogStatus(); 431 TraceLogStatus();
429 ~TraceLogStatus(); 432 ~TraceLogStatus();
430 size_t event_capacity; 433 size_t event_capacity;
431 size_t event_count; 434 size_t event_count;
432 }; 435 };
433 436
434 class BASE_EXPORT TraceLog { 437 class BASE_EXPORT TraceLog {
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after
745 } 748 }
746 749
747 // Internal representation of trace options since we store the currently used 750 // Internal representation of trace options since we store the currently used
748 // trace option as an AtomicWord. 751 // trace option as an AtomicWord.
749 static const InternalTraceOptions kInternalNone; 752 static const InternalTraceOptions kInternalNone;
750 static const InternalTraceOptions kInternalRecordUntilFull; 753 static const InternalTraceOptions kInternalRecordUntilFull;
751 static const InternalTraceOptions kInternalRecordContinuously; 754 static const InternalTraceOptions kInternalRecordContinuously;
752 static const InternalTraceOptions kInternalEchoToConsole; 755 static const InternalTraceOptions kInternalEchoToConsole;
753 static const InternalTraceOptions kInternalEnableSampling; 756 static const InternalTraceOptions kInternalEnableSampling;
754 static const InternalTraceOptions kInternalRecordAsMuchAsPossible; 757 static const InternalTraceOptions kInternalRecordAsMuchAsPossible;
758 static const InternalTraceOptions kInternalEnableArgsWhitelist;
755 759
756 // This lock protects TraceLog member accesses (except for members protected 760 // This lock protects TraceLog member accesses (except for members protected
757 // by thread_info_lock_) from arbitrary threads. 761 // by thread_info_lock_) from arbitrary threads.
758 mutable Lock lock_; 762 mutable Lock lock_;
759 // This lock protects accesses to thread_names_, thread_event_start_times_ 763 // This lock protects accesses to thread_names_, thread_event_start_times_
760 // and thread_colors_. 764 // and thread_colors_.
761 Lock thread_info_lock_; 765 Lock thread_info_lock_;
762 Mode mode_; 766 Mode mode_;
763 int num_traces_recorded_; 767 int num_traces_recorded_;
764 scoped_ptr<TraceBuffer> logged_events_; 768 scoped_ptr<TraceBuffer> logged_events_;
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
820 subtle::AtomicWord generation_; 824 subtle::AtomicWord generation_;
821 bool use_worker_thread_; 825 bool use_worker_thread_;
822 826
823 DISALLOW_COPY_AND_ASSIGN(TraceLog); 827 DISALLOW_COPY_AND_ASSIGN(TraceLog);
824 }; 828 };
825 829
826 } // namespace trace_event 830 } // namespace trace_event
827 } // namespace base 831 } // namespace base
828 832
829 #endif // BASE_TRACE_EVENT_TRACE_EVENT_IMPL_H_ 833 #endif // BASE_TRACE_EVENT_TRACE_EVENT_IMPL_H_
OLDNEW
« no previous file with comments | « no previous file | base/trace_event/trace_event_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698