الانتقال إلى المحتوى الرئيسي
يُقيِّم استعلام 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:
نوع النتيجةأعمدة النتيجةمثال
vectortags Array(Tuple(String, String)), timestamp TimestampType, value ValueTypeprometheusQuery(mytable, ‘up’)
matrixtags Array(Tuple(String, String)), time_series Array(Tuple(TimestampType, ValueType))prometheusQuery(mytable, ‘up[1m]‘)
scalarscalar ValueTypeprometheusQuery(mytable, ‘1h30m’)
stringstring StringprometheusQuery(mytable, ‘“abc”‘)

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

المحددات

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

الدوال

الفئةالدوال
النطاقrate, irate, delta, idelta, last_over_time
الرياضياتabs, sgn, floor, ceil, sqrt, exp, ln, log2, log10, rad, deg
حساب المثلثاتsin, cos, tan, asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh
DateTimeday_of_week, day_of_month, days_in_month, day_of_year, minute, hour, month, year
Typescalar, vector
مُدرَّج تكراريhistogram_quantile
أخرىtime, pi
ملاحظة: تستخدم histogram_quantile الاستيفاء الخطي على حاويات المُدرَّج التكراري التقليدية (التي يحدّدها الوسم le). لا تزال المُدرَّجات التكرارية الأصلية غير مدعومة، ويجب أن تكون قيمة الوسيط phi (مستوى الكوانتايل) حاليًا قيمة scalar ثابتة — وتُرفَض التعبيرات التي تتغيّر في كل خطوة، مثل histogram_quantile(time() / 1000, ...)، مع ظهور الخطأ NOT_IMPLEMENTED.

العوامل

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

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

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

مثال

SELECT * FROM prometheusQueryRange(mytable, 'rate(http_requests{job="prometheus"}[10m])[1h:10m]', now() - INTERVAL 10 MINUTES, now(), INTERVAL 1 MINUTE)
آخر تعديل في ٢٥ يونيو ٢٠٢٦