Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

prometheusQueryRange

يُقيِّم استعلام Prometheus باستخدام بيانات من جدول TimeSeries عبر نطاق من أزمنة التقييم.

البنية

prometheusQueryRange('db_name', 'time_series_table', 'promql_query', start_time, end_time, step)
prometheusQueryRange(db_name.time_series_table, 'promql_query', start_time, end_time, step)
prometheusQueryRange('time_series_table', 'promql_query', start_time, end_time, step)

المعاملات

  • db_name - اسم قاعدة البيانات التي يوجد فيها جدول TimeSeries.
  • time_series_table - اسم جدول TimeSeries.
  • promql_query - استعلام مكتوب بصياغة PromQL.
  • start_time - وقت بداية نطاق التقييم.
  • end_time - وقت نهاية نطاق التقييم.
  • step - الخطوة المستخدَمة للتنقّل عبر وقت التقييم من start_time إلى end_time (شاملاً).

القيمة المُعادة

يمكن أن تُرجِع الدالة أعمدة مختلفة بناءً على نوع نتيجة الاستعلام المُمرَّر إلى المَعلمة promql_query:

نوع النتيجة أعمدة النتيجة مثال
vector tags Array(Tuple(String, String)), timestamp TimestampType, value ValueType prometheusQuery(mytable, 'up')
matrix tags Array(Tuple(String, String)), time_series Array(Tuple(TimestampType, ValueType)) prometheusQuery(mytable, 'up[1m]')
scalar scalar ValueType prometheusQuery(mytable, '1h30m')
string string String prometheusQuery(mytable, '"abc"')

الميزات المدعومة في PromQL

المحددات

المحددات اللحظية، ومحددات النطاق، ومطابقات الوسوم (=, !=, =~, !~)، ومُعدِّلات الإزاحة، ومُعدِّلات الطابع الزمني @، والاستعلامات الفرعية.

الدوال

الفئة الدوال
النطاق rate, irate, delta, idelta, increase, last_over_time, deriv, changes, resets
الرياضيات abs, sgn, floor, ceil, sqrt, exp, ln, log2, log10, rad, deg, round, clamp, clamp_min, clamp_max
حساب المثلثات sin, cos, tan, asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh
DateTime day_of_week, day_of_month, days_in_month, day_of_year, minute, hour, month, year
الوسم label_replace, label_join
نوع scalar, vector
مُدرَّج تكراري histogram_quantile
أخرى time, pi

ملاحظة: تستخدم histogram_quantile الاستيفاء الخطي على حاويات المُدرَّج التكراري التقليدية (التي يحدّدها الوسم le). المُدرَّجات التكرارية الأصلية غير مدعومة. يجب أن تكون قيمة الوسيط phi (مستوى الكوانتايل) قيمة scalar ثابتة. تُرفَض التعبيرات التي تتغيّر في كل خطوة، مثل histogram_quantile(time() / 1000, ...)، مع ظهور استثناء NOT_IMPLEMENTED.

العوامل

العوامل الثنائية الحسابية (+, -, *, /, %, ^, atan2) وعوامل المقارنة (==, !=, <, >, <=, >= مع bool اختياري)، مع المعدِّلات on()/ignoring() وgroup_left()/group_right().

عوامل المجموعات المنطقية and وor وunless، مع المعدِّلات on()/ignoring().

العاملان الأحاديان + و-.

معاملات التجميع

sum, avg, min, max, count, stddev, stdvar, group, quantile, topk, bottomk, limitk — مع معدِّلات اختيارية by() أو without().

غير مدعوم حاليًا

  • عامل التجميع count_values
  • دوال النطاق predict_linear، avg_over_time، min_over_time، max_over_time، sum_over_time، count_over_time، quantile_over_time، stddev_over_time، stdvar_over_time، present_over_time، absent_over_time، mad_over_time، first_over_time، ts_of_min_over_time، ts_of_max_over_time، ts_of_last_over_time، ts_of_first_over_time
  • الدالة absent

مثال

SELECT * FROM prometheusQueryRange(mytable, 'rate(http_requests{job="prometheus"}[10m])[1h:10m]', now() - INTERVAL 10 MINUTES, now(), INTERVAL 1 MINUTE)
Navigation