Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clean up the use of macro_use and extern crate #398

Merged
merged 2 commits into from Mar 23, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
6 changes: 2 additions & 4 deletions examples/example_custom_registry.rs
Expand Up @@ -3,14 +3,12 @@
//! This examples shows how to use multiple and custom registries,
//! and how to perform registration across function boundaries.

#[macro_use]
extern crate lazy_static;
extern crate prometheus;

use std::collections::HashMap;

use prometheus::{Encoder, IntCounter, Registry};

use lazy_static::lazy_static;

lazy_static! {
static ref DEFAULT_COUNTER: IntCounter = IntCounter::new("default", "generic counter").unwrap();
static ref CUSTOM_COUNTER: IntCounter = IntCounter::new("custom", "dedicated counter").unwrap();
Expand Down
8 changes: 3 additions & 5 deletions examples/example_hyper.rs
@@ -1,17 +1,15 @@
// Copyright 2019 TiKV Project Authors. Licensed under Apache-2.0.

#[macro_use]
extern crate lazy_static;
#[macro_use]
extern crate prometheus;

use hyper::{
header::CONTENT_TYPE,
service::{make_service_fn, service_fn},
Body, Request, Response, Server,
};
use prometheus::{Counter, Encoder, Gauge, HistogramVec, TextEncoder};

use lazy_static::lazy_static;
use prometheus::{labels, opts, register_counter, register_gauge, register_histogram_vec};

lazy_static! {
static ref HTTP_COUNTER: Counter = register_counter!(opts!(
"example_http_requests_total",
Expand Down
10 changes: 5 additions & 5 deletions examples/example_int_metrics.rs
@@ -1,12 +1,12 @@
// Copyright 2019 TiKV Project Authors. Licensed under Apache-2.0.

#[macro_use]
extern crate lazy_static;
#[macro_use]
extern crate prometheus;

use prometheus::{IntCounter, IntCounterVec, IntGauge, IntGaugeVec};

use lazy_static::lazy_static;
use prometheus::{
register_int_counter, register_int_counter_vec, register_int_gauge, register_int_gauge_vec,
};

lazy_static! {
static ref A_INT_COUNTER: IntCounter =
register_int_counter!("A_int_counter", "foobar").unwrap();
Expand Down
8 changes: 3 additions & 5 deletions examples/example_push.rs
Expand Up @@ -2,18 +2,16 @@

#![cfg_attr(not(feature = "push"), allow(unused_imports, dead_code))]

#[macro_use]
extern crate lazy_static;
#[macro_use]
extern crate prometheus;

use std::env;
use std::thread;
use std::time;

use getopts::Options;
use prometheus::{Counter, Histogram};

use lazy_static::lazy_static;
use prometheus::{labels, register_counter, register_histogram};

lazy_static! {
static ref PUSH_COUNTER: Counter = register_counter!(
"example_push_total",
Expand Down
15 changes: 6 additions & 9 deletions src/lib.rs
Expand Up @@ -53,10 +53,11 @@ This crate supports staticly built metrics. You can use it with
some metrics.

```rust
#[macro_use] extern crate lazy_static;
#[macro_use] extern crate prometheus;
use prometheus::{self, IntCounter, TextEncoder, Encoder};

use lazy_static::lazy_static;
use prometheus::register_int_counter;

lazy_static! {
static ref HIGH_FIVE_COUNTER: IntCounter =
register_int_counter!("highfives", "Number of high fives received").unwrap();
Expand All @@ -71,11 +72,12 @@ By default, this registers with a default registry. To make a report, you can ca
[`Encoder`](trait.Encoder.html) and report to Promethus.

```
# #[macro_use] extern crate lazy_static;
#[macro_use] extern crate prometheus;
# use prometheus::IntCounter;
use prometheus::{self, TextEncoder, Encoder};

use lazy_static::lazy_static;
use prometheus::register_int_counter;

// Register & measure some metrics.
# lazy_static! {
# static ref HIGH_FIVE_COUNTER: IntCounter =
Expand Down Expand Up @@ -145,11 +147,6 @@ macro_rules! from_vec {
};
}

#[macro_use]
extern crate cfg_if;
#[macro_use]
extern crate lazy_static;

#[macro_use]
mod macros;
mod atomic64;
Expand Down
18 changes: 9 additions & 9 deletions src/macros.rs
Expand Up @@ -5,8 +5,8 @@
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use std::collections::HashMap;
/// # use prometheus::labels;
/// # fn main() {
/// let labels = labels!{
/// "test" => "hello",
Expand Down Expand Up @@ -41,7 +41,7 @@ macro_rules! labels {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::{labels, opts};
/// # fn main() {
/// let name = "test_opts";
/// let help = "test opts help";
Expand Down Expand Up @@ -87,8 +87,8 @@ macro_rules! opts {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::linear_buckets;
/// # use prometheus::{histogram_opts, labels};
/// # fn main() {
/// let name = "test_histogram_opts";
/// let help = "test opts help";
Expand Down Expand Up @@ -135,7 +135,7 @@ macro_rules! histogram_opts {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::{opts, register_counter};
/// # fn main() {
/// let opts = opts!("test_macro_counter_1", "help");
/// let res1 = register_counter!(opts);
Expand Down Expand Up @@ -189,7 +189,7 @@ macro_rules! __register_counter_vec {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::{opts, register_counter_vec};
/// # fn main() {
/// let opts = opts!("test_macro_counter_vec_1", "help");
/// let counter_vec = register_counter_vec!(opts, &["a", "b"]);
Expand Down Expand Up @@ -238,7 +238,7 @@ macro_rules! __register_gauge {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::{opts, register_gauge};
/// # fn main() {
/// let opts = opts!("test_macro_gauge", "help");
/// let res1 = register_gauge!(opts);
Expand Down Expand Up @@ -287,7 +287,7 @@ macro_rules! __register_gauge_vec {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::{opts, register_gauge_vec};
/// # fn main() {
/// let opts = opts!("test_macro_gauge_vec_1", "help");
/// let gauge_vec = register_gauge_vec!(opts, &["a", "b"]);
Expand Down Expand Up @@ -327,7 +327,7 @@ macro_rules! register_int_gauge_vec {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::{histogram_opts, register_histogram};
/// # fn main() {
/// let opts = histogram_opts!("test_macro_histogram", "help");
/// let res1 = register_histogram!(opts);
Expand Down Expand Up @@ -363,7 +363,7 @@ macro_rules! register_histogram {
/// # Examples
///
/// ```
/// # #[macro_use] extern crate prometheus;
/// # use prometheus::{histogram_opts, register_histogram_vec};
/// # fn main() {
/// let opts = histogram_opts!("test_macro_histogram_vec_1", "help");
/// let histogram_vec = register_histogram_vec!(opts, &["a", "b"]);
Expand Down
2 changes: 2 additions & 0 deletions src/process_collector.rs
Expand Up @@ -6,6 +6,8 @@

use std::sync::Mutex;

use lazy_static::lazy_static;

use crate::counter::Counter;
use crate::desc::Desc;
use crate::gauge::Gauge;
Expand Down
2 changes: 2 additions & 0 deletions src/push.rs
Expand Up @@ -10,6 +10,8 @@ use reqwest::blocking::Client;
use reqwest::header::CONTENT_TYPE;
use reqwest::{Method, StatusCode, Url};

use lazy_static::lazy_static;

use crate::encoder::{Encoder, ProtobufEncoder};
use crate::errors::{Error, Result};
use crate::metrics::Collector;
Expand Down
3 changes: 3 additions & 0 deletions src/registry.rs
Expand Up @@ -12,6 +12,9 @@ use crate::errors::{Error, Result};
use crate::metrics::Collector;
use crate::proto;

use cfg_if::cfg_if;
use lazy_static::lazy_static;

struct RegistryCore {
pub collectors_by_id: HashMap<u64, Box<dyn Collector>>,
pub dim_hashes_by_name: HashMap<String, u64>,
Expand Down
2 changes: 2 additions & 0 deletions src/timer.rs
Expand Up @@ -2,6 +2,8 @@ use std::sync::atomic::{AtomicBool, AtomicU64, Ordering};
use std::thread;
use std::time::{Duration, Instant};

use lazy_static::lazy_static;

/// Milliseconds since ANCHOR.
static RECENT: AtomicU64 = AtomicU64::new(0);
lazy_static! {
Expand Down
1 change: 1 addition & 0 deletions static-metric/Cargo.toml
Expand Up @@ -7,6 +7,7 @@ description = "Static metric helper utilities for rust-prometheus."
repository = "https://github.com/tikv/rust-prometheus"
homepage = "https://github.com/tikv/rust-prometheus"
documentation = "https://docs.rs/prometheus-static-metric"
edition = "2018"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Self-note: this needs a version bump to 0.6.z


[lib]
proc-macro = true
Expand Down
2 changes: 2 additions & 0 deletions static-metric/Makefile
Expand Up @@ -10,6 +10,8 @@ build:
test:
cargo test --features="${ENABLE_FEATURES}" -- --nocapture

dev: format test

format:
@cargo fmt --all -- --check >/dev/null || cargo fmt --all

Expand Down
12 changes: 4 additions & 8 deletions static-metric/README.md
Expand Up @@ -46,7 +46,7 @@ introducing a lot of templating code.
- Add to `lib.rs`:

```rust
extern crate prometheus_static_metric;
use prometheus_static_metric;
```

## Example
Expand Down Expand Up @@ -89,14 +89,10 @@ fn main() {
For heavier scenario that a global shared static-metric might not be effecient enough, you can use `make_auto_flush_static_metric!` macro, which will store data in local thread storage, with a custom rate to flush to global `MetricVec`.

```rust
#[macro_use]
extern crate lazy_static;
extern crate prometheus;
extern crate prometheus_static_metric;

use prometheus::*;
use prometheus_static_metric::auto_flush_from;
use prometheus_static_metric::make_auto_flush_static_metric;

use lazy_static:lazy_static;
use prometheus_static_metric::{auto_flush_from, make_auto_flush_static_metric};

make_auto_flush_static_metric! {

Expand Down
5 changes: 1 addition & 4 deletions static-metric/benches/benches.rs
@@ -1,11 +1,8 @@
// Copyright 2019 TiKV Project Authors. Licensed under Apache-2.0.

extern crate criterion;
extern crate prometheus;
extern crate prometheus_static_metric;

use criterion::{criterion_group, criterion_main, Criterion};
use prometheus::{IntCounter, IntCounterVec, Opts};

use prometheus_static_metric::make_static_metric;

/// Single `IntCounter` performance.
Expand Down
9 changes: 3 additions & 6 deletions static-metric/examples/advanced.rs
@@ -1,12 +1,9 @@
// Copyright 2019 TiKV Project Authors. Licensed under Apache-2.0.

#[macro_use]
extern crate lazy_static;
#[macro_use]
extern crate prometheus;
extern crate prometheus_static_metric;

use prometheus::IntCounterVec;

use lazy_static::lazy_static;
use prometheus::register_int_counter_vec;
use prometheus_static_metric::make_static_metric;

make_static_metric! {
Expand Down
7 changes: 2 additions & 5 deletions static-metric/examples/local.rs
@@ -1,13 +1,10 @@
// Copyright 2019 TiKV Project Authors. Licensed under Apache-2.0.

#[macro_use]
extern crate lazy_static;
extern crate prometheus;
extern crate prometheus_static_metric;

use std::cell::Cell;

use prometheus::*;

use lazy_static::lazy_static;
use prometheus_static_metric::make_static_metric;

make_static_metric! {
Expand Down
17 changes: 5 additions & 12 deletions static-metric/examples/make_auto_flush_static_counter.rs
Expand Up @@ -5,14 +5,10 @@
Use metric enums to reuse possible values of a label.

*/
#[macro_use]
extern crate lazy_static;
extern crate prometheus;
extern crate prometheus_static_metric;

use prometheus::*;
use prometheus_static_metric::auto_flush_from;
use prometheus_static_metric::make_auto_flush_static_metric;

use lazy_static::lazy_static;
use prometheus_static_metric::{auto_flush_from, make_auto_flush_static_metric};

make_auto_flush_static_metric! {

Expand Down Expand Up @@ -95,11 +91,6 @@ fn main() {
/*

/// Pseudo macro expanded code of make_auto_flush_static_counter
#[macro_use]
extern crate lazy_static;
extern crate prometheus;
extern crate prometheus_static_metric;

use std::cell::Cell;

#[allow(unused_imports)]
Expand All @@ -110,6 +101,8 @@ use std::mem;
use std::mem::MaybeUninit;
use std::thread::LocalKey;

use lazy_static::lazy_static;

#[allow(dead_code)]
#[allow(non_camel_case_types)]
#[derive(Clone, Copy, PartialEq)]
Expand Down