Commit Graph

52 Commits

Author SHA1 Message Date
Chris H-C
208211ef1b bug 1440673 - Summarize dynamic events to a dynamic scalar r=Dexter
MozReview-Commit-ID: KD9ADGJZZCM
2018-03-29 14:28:50 -04:00
Chris H-C
53e17d0199 bug 1440673 - Set the max number of event summary keys by pref r=Dexter
Introducing the pref toolkit.telemetry.maxEventSummaryKeys which we should
hopefully never have to think about because (and yes, I risk being quoted in
future for this):

500 unique event names per process ought to be enough.

We check the preference just once but have to set it each time as the
KeyedScalar object may have been recreated while we weren't looking.

MozReview-Commit-ID: 8IE9dcfuynh
2018-03-28 13:58:33 -04:00
Chris H-C
8c746ff43f bug 1440673 - Allow changing the max number of keys per-keyed-scalar r=Dexter
I considered a few different ways to do this, but storing the limit inside the
KeyedScalar itself was the cleanest. The limit check is too deep to pass it as
an argument, and making it conditional on the keyed scalar being called
"telemetry.event_counts" was too fragile.

MozReview-Commit-ID: AyfEKB40Abb
2018-03-28 13:45:07 -04:00
Chris H-C
5b15bc62e2 bug 1440673 - Summarize events to a keyed scalar r=Dexter
Telemetry Events will now be counted in the keyed scalar
"telemetry.event_counts" even if their category is not enabled for recording.

The keys will be category#method#object and a follow-up commit will expand the
process limit of the number of these from 100 to 500, configurable by pref.

Unfortunately Event Telemetry needs a special API so that an event recorded in
multiple processes will be summarized to those processes separately.

MozReview-Commit-ID: 7dKcM3SXO6r
2018-03-16 15:56:16 -04:00
Chris H-C
c5ec6dbc9b bug 1440673 - Allow scalar keys to be an extra 2 chars long r=Dexter
This allows us to store Telemetry Event category (30), method (20),
object (20), and two delimiters (2) in a single key, like so:

oohwowlookthiscategoryissolong#thismethodislongtooo#thisobjectisnoslouch

MozReview-Commit-ID: BkoU1VAXFF9
2018-03-27 16:15:27 -04:00
Chris H-C
9fa31b0c25 bug 1440673 - Fix off-by-one errors in keyed scalars r=Dexter
The maximum key length constraint should be strict greater-than, and the
maximum number of keys constraint should only be checked if we are creating a
new key.

MozReview-Commit-ID: 5fhfV8BbmRH
2018-03-27 16:59:15 -04:00
Chris Peterson
6758bf6a84 Bug 1436263 - Part 1: Replace final override virtual function specifiers with just final. r=froydnj
MozReview-Commit-ID: DE5HkIhsZ6D
2018-02-05 22:46:57 -08:00
Alessio Placitelli
eb7a868f0c Bug 1425909 - Enable adding scalars in artifact builds without rebuilding Firefox. r=chutten,froydnj
This patch enables generating a JSON file that mirrors the scalar definitions
in Scalars.yaml. On local developer builds, this file is loaded when Firefox
starts to register all the scalars. If some change was introduced in the
definition files, the new scalar will be dynamically added.
The JSON definition file will be regenerated every time an artifact build
is performed or the build faster command is invoked.

MozReview-Commit-ID: Do3WjE38aIK
2018-01-18 18:25:01 +01:00
Narcis Beleuzu
d49844a6e2 Backed out 2 changesets (bug 1425909) for mochitest C3 failures on test_memoryReporters.xul. on a CLOSED TREE
Backed out changeset 6bcaae60c82e (bug 1425909)
Backed out changeset 0b5d96b317c3 (bug 1425909)
2018-02-01 19:45:22 +02:00
Alessio Placitelli
7f5273e816 Bug 1425909 - Enable adding scalars in artifact builds without rebuilding Firefox. r=chutten,froydnj
This patch enables generating a JSON file that mirrors the scalar definitions
in Scalars.yaml. On local developer builds, this file is loaded when Firefox
starts to register all the scalars. If some change was introduced in the
definition files, the new scalar will be dynamically added.
The JSON definition file will be regenerated every time an artifact build
is performed or the build faster command is invoked.

MozReview-Commit-ID: Do3WjE38aIK
2018-01-18 18:25:01 +01:00
Chris Peterson
677bf4030c Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe
2017-11-05 19:37:28 -08:00
Alessio Placitelli
d9ee9ffc5f Bug 1409323 - Allow to register new addon scalars for an existing category. r=chutten
If we attempt to register again an old dynamic scalar, check if the new
definition makes it expired. If so, update the expiration state and propagate
the new "expired" scalar to the content proecesses.

MozReview-Commit-ID: A2LFN1irw4i
2017-10-17 16:00:12 +02:00
Fernando
35f250e29e Bug 1362957 - Refactor lock-protected TelemetryScalar code. r=Dexter 2017-10-15 05:42:00 -04:00
Alessio Placitelli
fdceb69955 Bug 1395835 - Rename "group" to "category" in the scalar code and docs. r=chutten
MozReview-Commit-ID: HQ3I2cfEaa
2017-09-27 10:12:13 +02:00
Alessio Placitelli
e24412e896 Bug 1393801 - Enable dynamic scalar registration. f=gfritzsche,r=billm,chutten
MozReview-Commit-ID: JlRk7hLV5QD
2017-08-29 13:05:40 +02:00
Chris Peterson
0a61b3fb68 Bug 870698 - Part 10: Replace Append(NS_LITERAL_STRING("")) with AppendLiteral(u""). r=erahm
The NS_LITERAL_STRING macro creates a temporary nsLiteralString to encapsulate the char16_t string literal and its length, but AssignLiteral() can determine the char16_t string literal's length at compile-time without nsLiteralString.

MozReview-Commit-ID: H9I6vNDMdIr
2017-09-07 18:32:54 -07:00
Alessio Placitelli
324089ac37 Bug 1395838 - Rename nsITelemetry.SCALAR_* to nsITelemetry.SCALAR_TYPE_*. r=chutten
MozReview-Commit-ID: 6urKlSG0I6s
2017-09-06 12:35:44 +02:00
Vanessa Gutierrez
82386a51f7 Bug 1376942 - Corrected incorrect spelling in comment: servers changed to serves. r=gfritzsche 2017-07-12 09:01:00 +02:00
Krypto
c61bf6f9d8 Bug 1375043 - Rename m(Keyed)Accumulations to m(Keyed)HistogramAccumulations in DiscardedData. r=gfritzsche 2017-06-24 17:26:56 +05:30
Chris H-C
1ad2c3202b bug 1369041 - Allow child processes to discard data when overwhelmed r=bsmedberg,gfritzsche f?bsmedberg
It is possible in extreme cases that the Telemetry IPC Accumulator might be
starved long enough that it cannot drain its stored accumulations for a while.

Once we hit 5x the high water mark, start discarding data.

Count each piece and type of discarded data and report it via a custom IPC
message.

MozReview-Commit-ID: JayRpa5QPec
2017-06-09 09:53:42 -04:00
Georg Fritzsche
940a7067c5 Bug 1361661 - Part 3 - Update the Telemetry core. r=dexter
Updates the core Telemetry code to use the new headers and support the extension process.
TelemetryHistogram is not cleanly refactored here; doing this uncovered a few time consuming issues with the various lookup code paths.
2017-05-23 13:48:13 +07:00
Sebastian Hengst
2d99162f7f Backed out changeset 42a4e28e6210 (bug 1361661) 2017-05-22 20:40:17 +02:00
Georg Fritzsche
ab50d638c5 Bug 1361661 - Part 3: Update the Telemetry core. r=dexter
Updates the core Telemetry code to use the new headers and support the extension process.
TelemetryHistogram is not cleanly refactored here; doing this uncovered a few time consuming issues with the various lookup code paths.
2017-05-22 15:41:14 +07:00
Sebastian Hengst
de9a911353 Backed out changeset d1932fb366d4 (bug 1361661) 2017-05-22 16:19:21 +02:00
Georg Fritzsche
0f76edd4d9 Bug 1361661 - Part 3: Update the Telemetry core. r=dexter
Updates the core Telemetry code to use the new headers and support the extension process.
TelemetryHistogram is not cleanly refactored here; doing this uncovered a few time consuming issues with the various lookup code paths.
2017-05-22 15:41:14 +07:00
Georg Fritzsche
d8b6b7d1e8 Bug 1313326 - Part 2 - Restrict event recording to specified processes. r=dexter 2017-03-06 16:12:49 +01:00
Alessio Placitelli
39e707fc1f Bug 1340542 - Move the scalar ID checks to the public API. r=gfritzsche
MozReview-Commit-ID: 1tDkVKFdaeU
2017-02-22 11:57:04 +01:00
Georg Fritzsche
2011d0ae0c Bug 1339749 - Refactor Telemetry IPC code. r=chutten 2017-02-15 16:25:40 +01:00
Sylvestre Ledru
684bd41226 Bug 1338086 - Remove useless else blocks in order to reduce complexity in toolkit/components/telemetry/ r=Dexter
MozReview-Commit-ID: EjMufQ1PReI
2017-02-09 10:52:55 +01:00
Alessio Placitelli
e50dbc16d9 Bug 1334513 - Make sure Keyed Scalars APIs don't allow empty keys. r=gfritzsche 2017-01-31 05:46:00 -05:00
Alessio Placitelli
9b6924faf5 Bug 1333578 - Use mozilla::Variant instead of nsIVariant for child processes scalars. r=froydnj, f=gfritzsche
MozReview-Commit-ID: 1rB01Wi1Mkn
2017-01-30 12:04:00 +01:00
Alessio Placitelli
7f74c3f40c Bug 1333024 - Don't record scalars with the C++ API if not allowed in the current process. r=chutten 2017-01-23 07:40:00 +01:00
Alessio Placitelli
463fb241b8 Bug 1321790 - Change the JS Scalar API so that it doesn't throw. r=chutten
MozReview-Commit-ID: K8jVoLr8GJn
2017-01-18 06:26:00 -05:00
Alessio Placitelli
1a9102ac62 Bug 1278556 - Enable child process scalar recording. r=chutten, f=gfritzsche,froydnj
MozReview-Commit-ID: IddrszBX0f5
2017-01-16 05:12:00 +01:00
Sylvestre Ledru
79a067af86 Bug 1318004 - Use C++11's override and remove virtual where applicable. r=Ehsan
MozReview-Commit-ID: H9tAe0YN1tx
2016-11-16 17:08:26 +01:00
Sylvestre Ledru
a15f1c5d08 Bug 1318004 - Replace default bodies of special member functions with = default; r=Ehsan
MozReview-Commit-ID: 33AOhtFrXS8
2016-11-16 18:26:14 +01:00
Wes Kocher
b620596e75 Backed out 4 changesets (bug 1318004) for xpcshell failures a=backout CLOSED TREE
Backed out changeset a3fe53641526 (bug 1318004)
Backed out changeset a5d1676b6f88 (bug 1318004)
Backed out changeset b56b37f0f4d7 (bug 1318004)
Backed out changeset fb5254baf1cb (bug 1318004)
2016-11-21 16:15:38 -08:00
Sylvestre Ledru
b48ac2ed6f Bug 1318004 - Use C++11's override and remove virtual where applicable. r=Ehsan
MozReview-Commit-ID: H9tAe0YN1tx
2016-11-16 17:08:26 +01:00
Sylvestre Ledru
eaf1a1bb8c Bug 1318004 - Replace default bodies of special member functions with = default; r=Ehsan
MozReview-Commit-ID: 33AOhtFrXS8
2016-11-16 18:26:14 +01:00
Wes Kocher
13642ca8af Backed out 4 changesets (bug 1318004) for xpcshell failures a=backout
Backed out changeset 6995bd33872b (bug 1318004)
Backed out changeset 9be5c856bc78 (bug 1318004)
Backed out changeset 365b0b7f289a (bug 1318004)
Backed out changeset 2f2ebf176eac (bug 1318004)
2016-11-21 12:23:17 -08:00
Sylvestre Ledru
9fbcdd2d4f Bug 1318004 - Use C++11's override and remove virtual where applicable. r=Ehsan
MozReview-Commit-ID: H9tAe0YN1tx
2016-11-16 17:08:26 +01:00
Sylvestre Ledru
c30faf12df Bug 1318004 - Replace default bodies of special member functions with = default; r=Ehsan
MozReview-Commit-ID: 33AOhtFrXS8
2016-11-16 18:26:14 +01:00
Georg Fritzsche
ee8fa595c6 Bug 1302663 - Part 2 - Implement Event Telemetry recording. r=froydnj,dexter
This implements the API, storage and serialization for Telemetry event recording.
2016-11-18 15:51:58 +01:00
Carsten "Tomcat" Book
6ee0c0ae44 Backed out changeset 64b95c8f9f12 (bug 1302663) 2016-11-18 14:27:50 +01:00
Georg Fritzsche
07339c0184 Bug 1302663 - Part 2 - Implement Event Telemetry recording. r=froydnj,dexter
This implements the API, storage and serialization for Telemetry event recording.
2016-11-18 13:03:58 +01:00
Sebastian Hengst
280534d947 Backed out changeset ab64c55508aa (bug 1302663) 2016-11-12 21:17:36 +01:00
Georg Fritzsche
41f4db552f Bug 1302663 - Part 2 - Implement Event Telemetry recording. r=froydnj,dexter
This implements the API, storage and serialization for Telemetry event recording.
2016-11-13 01:52:28 +07:00
Alessio Placitelli
ca3cfb721d Bug 1305654 - Fix the SetMaximum C++ API for Scalars. r=gfritzsche 2016-09-27 01:32:00 -04:00
Alessio Placitelli
75704c0bb9 Bug 1277806 - Implement keyed scalar measurements in Telemetry. r=gfritzsche,nfroyd
MozReview-Commit-ID: 9kkjpLAIQUX
2016-09-16 03:43:00 +02:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00