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

Side by Side Diff: extensions/browser/api/cast_channel/logger.h

Issue 475463002: Cast channel logging: log additional statistics. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@REAL-NEW-MASTER
Patch Set: Fix merge Created 6 years, 4 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #ifndef EXTENSIONS_BROWSER_API_CAST_CHANNEL_LOGGER_H_ 5 #ifndef EXTENSIONS_BROWSER_API_CAST_CHANNEL_LOGGER_H_
6 #define EXTENSIONS_BROWSER_API_CAST_CHANNEL_LOGGER_H_ 6 #define EXTENSIONS_BROWSER_API_CAST_CHANNEL_LOGGER_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <map> 9 #include <map>
10 10
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 typedef std::map<int, linked_ptr<AggregatedSocketEventLog> > 110 typedef std::map<int, linked_ptr<AggregatedSocketEventLog> >
111 AggregatedSocketEventLogMap; 111 AggregatedSocketEventLogMap;
112 112
113 // Returns a SocketEvent proto with common fields (EventType, timestamp) 113 // Returns a SocketEvent proto with common fields (EventType, timestamp)
114 // populated. 114 // populated.
115 proto::SocketEvent CreateEvent(proto::EventType event_type); 115 proto::SocketEvent CreateEvent(proto::EventType event_type);
116 116
117 // Records |event| associated with |channel_id|. 117 // Records |event| associated with |channel_id|.
118 // If the internal map is already logging maximum number of sockets and this 118 // If the internal map is already logging maximum number of sockets and this
119 // is a new socket, the socket with the smallest channel id will be discarded. 119 // is a new socket, the socket with the smallest channel id will be discarded.
120 // Returns a pointer to the Event proto with |event_type| and 120 // Returns a reference to the AggregatedSocketEvent proto created/modified.
121 // timestamp populated. 121 proto::AggregatedSocketEvent& LogSocketEvent(
122 void LogSocketEvent(int channel_id, const proto::SocketEvent& socket_event); 122 int channel_id,
123 const proto::SocketEvent& socket_event);
123 124
124 scoped_ptr<base::TickClock> clock_; 125 scoped_ptr<base::TickClock> clock_;
125 AggregatedSocketEventLogMap aggregated_socket_events_; 126 AggregatedSocketEventLogMap aggregated_socket_events_;
126 base::TimeTicks unix_epoch_time_ticks_; 127 base::TimeTicks unix_epoch_time_ticks_;
127 128
128 // Number of socket / event entries evicted by the logger due to size 129 // Log proto holding global statistics.
129 // constraints. 130 proto::Log log_;
130 int num_evicted_aggregated_socket_events_;
131 int num_evicted_socket_events_;
132 131
133 base::ThreadChecker thread_checker_; 132 base::ThreadChecker thread_checker_;
134 133
135 DISALLOW_COPY_AND_ASSIGN(Logger); 134 DISALLOW_COPY_AND_ASSIGN(Logger);
136 }; 135 };
137 } // namespace cast_channel 136 } // namespace cast_channel
138 } // namespace api 137 } // namespace api
139 } // namespace extensions 138 } // namespace extensions
140 139
141 #endif // EXTENSIONS_BROWSER_API_CAST_CHANNEL_LOGGER_H_ 140 #endif // EXTENSIONS_BROWSER_API_CAST_CHANNEL_LOGGER_H_
OLDNEW
« no previous file with comments | « extensions/browser/api/cast_channel/cast_socket.cc ('k') | extensions/browser/api/cast_channel/logger.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698