diff --git a/x-pack/plugins/infra/public/alerting/log_threshold/components/expression_editor/criterion_preview_chart.tsx b/x-pack/plugins/infra/public/alerting/log_threshold/components/expression_editor/criterion_preview_chart.tsx index 0ad6378a22960a..371dff4ed6a70c 100644 --- a/x-pack/plugins/infra/public/alerting/log_threshold/components/expression_editor/criterion_preview_chart.tsx +++ b/x-pack/plugins/infra/public/alerting/log_threshold/components/expression_editor/criterion_preview_chart.tsx @@ -47,6 +47,7 @@ import { } from '../../../../../common/http_api/log_alerts/'; import { useChartPreviewData } from './hooks/use_chart_preview_data'; import { decodeOrThrow } from '../../../../../common/runtime_types'; +import { useKibanaTimeZoneSetting } from '../../../../hooks/use_kibana_time_zone_setting'; const GROUP_LIMIT = 5; @@ -126,6 +127,7 @@ const CriterionPreviewChart: React.FC = ({ }) => { const { uiSettings } = useKibana().services; const isDarkMode = uiSettings?.get('theme:darkMode') || false; + const timezone = useKibanaTimeZoneSetting(); const { getChartPreviewData, @@ -242,6 +244,7 @@ const CriterionPreviewChart: React.FC = ({ }, }} color={!isGrouped ? colorTransformer(Color.color0) : undefined} + timeZone={timezone} /> {showThreshold && threshold ? ( (UI_SETTINGS.DATEFORMAT_TZ); + + if (!kibanaTimeZone || kibanaTimeZone === 'Browser') { + return 'local'; + } + + return kibanaTimeZone; +} diff --git a/x-pack/plugins/infra/public/pages/logs/log_entry_categories/sections/top_categories/single_metric_sparkline.tsx b/x-pack/plugins/infra/public/pages/logs/log_entry_categories/sections/top_categories/single_metric_sparkline.tsx index 861a584b26ad3d..75b47c8334bf61 100644 --- a/x-pack/plugins/infra/public/pages/logs/log_entry_categories/sections/top_categories/single_metric_sparkline.tsx +++ b/x-pack/plugins/infra/public/pages/logs/log_entry_categories/sections/top_categories/single_metric_sparkline.tsx @@ -14,6 +14,7 @@ import { } from '@elastic/eui/dist/eui_charts_theme'; import { useKibanaUiSetting } from '../../../../../utils/use_kibana_ui_setting'; +import { useKibanaTimeZoneSetting } from '../../../../../hooks/use_kibana_time_zone_setting'; import { TimeRange } from '../../../../../../common/time'; interface TimeSeriesPoint { @@ -33,6 +34,7 @@ export const SingleMetricSparkline: React.FunctionComponent<{ timeRange: TimeRange; }> = ({ metric, timeRange }) => { const [isDarkMode] = useKibanaUiSetting('theme:darkMode'); + const timeZone = useKibanaTimeZoneSetting(); const theme = useMemo( () => [ @@ -60,6 +62,7 @@ export const SingleMetricSparkline: React.FunctionComponent<{ xAccessor={timestampAccessor} xScaleType="time" yAccessors={valueAccessor} + timeZone={timeZone} /> ); diff --git a/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/series_chart.tsx b/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/series_chart.tsx index d1c98ed97ce182..22079943efb54f 100644 --- a/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/series_chart.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/series_chart.tsx @@ -16,6 +16,7 @@ import { } from '@elastic/charts'; import { NodeDetailsDataSeries } from '../../../../../common/http_api/node_details_api'; import { InventoryVisType } from '../../../../../common/inventory_models/types'; +import { useKibanaTimeZoneSetting } from '../../../../hooks/use_kibana_time_zone_setting'; interface Props { id: string; @@ -34,6 +35,7 @@ export const SeriesChart = (props: Props) => { }; export const AreaChart = ({ id, color, series, name, type, stack }: Props) => { + const timezone = useKibanaTimeZoneSetting(); const style: RecursivePartial = { area: { opacity: 1, @@ -56,11 +58,13 @@ export const AreaChart = ({ id, color, series, name, type, stack }: Props) => { areaSeriesStyle={style} color={color ? color : void 0} stackAccessors={stack ? ['timestamp'] : void 0} + timeZone={timezone} /> ); }; export const BarChart = ({ id, color, series, name, stack }: Props) => { + const timezone = useKibanaTimeZoneSetting(); const style: RecursivePartial = { rectBorder: { stroke: color || void 0, @@ -83,6 +87,7 @@ export const BarChart = ({ id, color, series, name, stack }: Props) => { barSeriesStyle={style} color={color ? color : void 0} stackAccessors={stack ? ['timestamp'] : void 0} + timeZone={timezone} /> ); }; diff --git a/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/series_chart.tsx b/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/series_chart.tsx index 47844543a279a0..12db775e243f8f 100644 --- a/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/series_chart.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/series_chart.tsx @@ -21,6 +21,7 @@ import { MetricsExplorerOptionsMetric, MetricsExplorerChartType, } from '../hooks/use_metrics_explorer_options'; +import { useKibanaTimeZoneSetting } from '../../../../hooks/use_kibana_time_zone_setting'; import { getMetricId } from './helpers/get_metric_id'; type NumberOrString = string | number; @@ -42,6 +43,7 @@ export const MetricExplorerSeriesChart = (props: Props) => { }; export const MetricsExplorerAreaChart = ({ metric, id, series, type, stack, opacity }: Props) => { + const timezone = useKibanaTimeZoneSetting(); const color = (metric.color && colorTransformer(metric.color)) || colorTransformer(Color.color0); const yAccessors = Array.isArray(id) @@ -78,11 +80,13 @@ export const MetricsExplorerAreaChart = ({ metric, id, series, type, stack, opac stackAccessors={stack ? ['timestamp'] : void 0} areaSeriesStyle={seriesAreaStyle} color={color} + timeZone={timezone} /> ); }; export const MetricsExplorerBarChart = ({ metric, id, series, stack }: Props) => { + const timezone = useKibanaTimeZoneSetting(); const color = (metric.color && colorTransformer(metric.color)) || colorTransformer(Color.color0); const yAccessors = Array.isArray(id) @@ -113,6 +117,7 @@ export const MetricsExplorerBarChart = ({ metric, id, series, stack }: Props) => stackAccessors={stack ? ['timestamp'] : void 0} barSeriesStyle={seriesBarStyle} color={color} + timeZone={timezone} /> ); };