| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| [ |
| { |
| "namespace": "metricsPrivate", |
| "description": "none", |
| "types": [ |
| { |
| "id": "MetricTypeType", |
| "type": "string", |
| "enum": ["histogram-log", "histogram-linear"], |
| "description": "The type of metric, such as 'histogram-log' or 'histogram-linear'." |
| }, |
| { |
| "id": "MetricType", |
| "type": "object", |
| "description": "Describes the type of metric that is to be collected.", |
| "properties": { |
| "metricName": {"type": "string", "description": "A unique name within the extension for the metric."}, |
| "type": { |
| "$ref": "MetricTypeType" |
| }, |
| "min": {"type": "integer", "description": "The minimum sample value to be recoded. Must be greater than zero."}, |
| "max": {"type": "integer", "description": "The maximum sample value to be recoded."}, |
| "buckets": {"type": "integer", "description": "The number of buckets to use when separating the recorded values."} |
| } |
| } |
| ], |
| "functions": [ |
| { |
| "name": "getIsCrashReportingEnabled", |
| "description": "Returns true if the user opted in to sending crash reports.", |
| "type": "function", |
| "parameters": [ |
| { |
| "name": "callback", |
| "type": "function", |
| "optional": false, |
| "parameters": [ |
| { "name": "is_enabled", "type": "boolean" } |
| ] |
| } |
| ] |
| }, |
| { |
| "name": "getFieldTrial", |
| "description": "Returns the group name chosen for the named trial, or the empty string if the trial does not exist or is not enabled.", |
| "type": "function", |
| "parameters": [ |
| {"name": "name", "type": "string"}, |
| { |
| "name": "callback", |
| "type": "function", |
| "optional": false, |
| "parameters": [ |
| { "name": "group", "type": "string" } |
| ] |
| } |
| ] |
| }, |
| { |
| "name": "getVariationParams", |
| "description": "Returns variation parameters for the named trial if available, or undefined otherwise.", |
| "type": "function", |
| "parameters": [ |
| {"name": "name", "type": "string"}, |
| { |
| "name": "callback", |
| "type": "function", |
| "optional": false, |
| "parameters": [ |
| { |
| "name": "params", |
| "optional": true, |
| "type": "object", |
| "additionalProperties": { "type": "string" } |
| } |
| ] |
| } |
| ] |
| }, |
| { |
| "name": "recordUserAction", |
| "type": "function", |
| "description": "Records an action performed by the user.", |
| "parameters": [ |
| {"name": "name", "type": "string"} |
| ] |
| }, |
| { |
| "name": "recordPercentage", |
| "type": "function", |
| "description": "Records a percentage value from 1 to 100.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordCount", |
| "type": "function", |
| "description": "Records a value than can range from 1 to 1,000,000.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordSmallCount", |
| "type": "function", |
| "description": "Records a value than can range from 1 to 100.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordMediumCount", |
| "type": "function", |
| "description": "Records a value than can range from 1 to 10,000.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordTime", |
| "type": "function", |
| "description": "Records an elapsed time of no more than 10 seconds. The sample value is specified in milliseconds.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordMediumTime", |
| "type": "function", |
| "description": "Records an elapsed time of no more than 3 minutes. The sample value is specified in milliseconds.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordLongTime", |
| "type": "function", |
| "description": "Records an elapsed time of no more than 1 hour. The sample value is specified in milliseconds.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordSparseValue", |
| "type": "function", |
| "description": "Increments the count associated with |value| in the sparse histogram defined by the |metricName|.", |
| "parameters": [ |
| {"name": "metricName", "type": "string"}, |
| {"name": "value", "type": "integer"} |
| ] |
| }, |
| { |
| "name": "recordValue", |
| "type": "function", |
| "description": "Adds a value to the given metric.", |
| "parameters": [ |
| {"name": "metric", "$ref": "MetricType"}, |
| {"name": "value", "type": "integer"} |
| ] |
| } |
| ], |
| "events": [] |
| } |
| ] |