package metrics2

// GetInt64Metric returns an Int64Metric instance using the default client.
func GetInt64Metric(measurement string, tags ...map[string]string) Int64Metric {
	return defaultClient.GetInt64Metric(measurement, tags...)
}

// GetFloat64Metric returns a Float64Metric instance using the default client.
func GetFloat64Metric(measurement string, tags ...map[string]string) Float64Metric {
	return defaultClient.GetFloat64Metric(measurement, tags...)
}
