glean/glean-core
Michael Droettboom 708bd98275
Bug 1653196: Always record *some* value for app_display_version (#1088)
* Bug 1653196: Always record *some* value for app_display_version

* Add comment

* spellcheck

* Fix test
2020-07-21 18:29:04 -04:00
..
android Bug 1650781: Use overflow rather than invalid for long strings (#1079) 2020-07-21 16:43:19 -04:00
benchmark Bug 1646626 - Add User-Agent headers to ping requests (#1030) 2020-07-03 15:25:02 +02:00
csharp Bug 1650781: Use overflow rather than invalid for long strings (#1079) 2020-07-21 16:43:19 -04:00
examples Bug 1646626 - Add User-Agent headers to ping requests (#1030) 2020-07-03 15:25:02 +02:00
ffi Bug 1650787 - Implement JWE metric in the bindings (#1073) 2020-07-21 17:22:22 +02:00
ios Bug 1650781: Use overflow rather than invalid for long strings (#1079) 2020-07-21 16:43:19 -04:00
preview Bumped version to 31.4.1 2020-07-20 14:08:23 -05:00
python Bug 1653196: Always record *some* value for app_display_version (#1088) 2020-07-21 18:29:04 -04:00
src Bug 1650781: Use overflow rather than invalid for long strings (#1079) 2020-07-21 16:43:19 -04:00
tests Bug 1650781: Use overflow rather than invalid for long strings (#1079) 2020-07-21 16:43:19 -04:00
Cargo.toml Bumped version to 31.4.1 2020-07-20 14:08:23 -05:00
LICENSE
README.md
metrics.yaml Bug 1609968 - Remove locale from baseline ping (#1016) 2020-06-30 16:17:36 +02:00
pings.yaml Bug 1609968 - Remove locale from baseline ping (#1016) 2020-06-30 16:17:36 +02:00

README.md

Glean SDK

The Glean SDK is a modern approach for a Telemetry library and is part of the Glean project.

glean-core

This library provides the core functionality of the Glean SDK, including implementations of all metric types, the ping serializer and the storage layer. It's used in all platform-specific wrappers.

It's not intended to be used by users directly. Each supported platform has a specific Glean package with a nicer API. A nice Rust API will be provided by the Glean crate.

Documentation

All documentation is available online:

Usage

use glean_core::{Glean, Configuration, CommonMetricData, metrics::*};
let cfg = Configuration {
    data_path: "/tmp/glean".into(),
    application_id: "glean.sample.app".into(),
    upload_enabled: true,
    max_events: None,
};
let mut glean = Glean::new(cfg).unwrap();
let ping = PingType::new("sample", true, true, vec![]);
glean.register_ping_type(&ping);

let call_counter: CounterMetric = CounterMetric::new(CommonMetricData {
    name: "calls".into(),
    category: "local".into(),
    send_in_pings: vec!["sample".into()],
    ..Default::default()
});

call_counter.add(&glean, 1);

glean.submit_ping(&ping, None).unwrap();

License

This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/