mirror of
https://github.com/grafana/grafana.git
synced 2026-08-26 13:27:30 -05:00
Plugin preloading: Fix performance measurement (#86855)
fix: measuring plugin preload performance
This commit is contained in:
+1
-1
@@ -222,7 +222,7 @@ export class GrafanaApp {
|
||||
const appPlugins = Object.values(config.apps).filter((app) => !awaitedAppPluginIds.includes(app.id));
|
||||
|
||||
preloadPlugins(appPlugins, extensionsRegistry);
|
||||
await preloadPlugins(awaitedAppPlugins, extensionsRegistry);
|
||||
await preloadPlugins(awaitedAppPlugins, extensionsRegistry, 'frontend_awaited_plugins_preload');
|
||||
}
|
||||
|
||||
setPluginExtensionGetter(createPluginExtensionsGetter(extensionsRegistry));
|
||||
|
||||
@@ -12,8 +12,12 @@ export type PluginPreloadResult = {
|
||||
extensionConfigs: PluginExtensionConfig[];
|
||||
};
|
||||
|
||||
export async function preloadPlugins(apps: AppPluginConfig[] = [], registry: ReactivePluginExtensionsRegistry) {
|
||||
startMeasure('frontend_plugins_preload');
|
||||
export async function preloadPlugins(
|
||||
apps: AppPluginConfig[] = [],
|
||||
registry: ReactivePluginExtensionsRegistry,
|
||||
eventName = 'frontend_plugins_preload'
|
||||
) {
|
||||
startMeasure(eventName);
|
||||
const promises = apps.filter((config) => config.preload).map((config) => preload(config));
|
||||
const preloadedPlugins = await Promise.all(promises);
|
||||
|
||||
@@ -21,7 +25,7 @@ export async function preloadPlugins(apps: AppPluginConfig[] = [], registry: Rea
|
||||
registry.register(preloadedPlugin);
|
||||
}
|
||||
|
||||
stopMeasure('frontend_plugins_preload');
|
||||
stopMeasure(eventName);
|
||||
}
|
||||
|
||||
async function preload(config: AppPluginConfig): Promise<PluginPreloadResult> {
|
||||
|
||||
Reference in New Issue
Block a user