Я подключил Miniprofiler к своему локальному проекту ASP.NET Core, и он работает должным образом. Теперь мне нужно, чтобы он работал в размещенной среде, где есть несколько экземпляров одного и того же веб-сайта и нет прикрепленных сеансов. Насколько я понимаю, это должно поддерживаться, если вы просто установите параметр хранилища при настройке профилировщика. Однако настройка хранилища, похоже, ничего не дает. Я инициализирую хранилище так:
var redisConnection = "...";
MiniProfiler.DefaultOptions.Storage = new RedisStorage(redisConnection);
app.UseMiniProfiler();
После этого я ожидал, что смогу открыть профилированную страницу, и результат будет добавлен в мой кеш Redis. Тогда я бы также ожидал, что новый экземпляр моего веб-сайта будет содержать исходный результат профилирования. Однако при создании новых результатов профиля в кэш ничего не записывается.
Чтобы проверить соединение, я попытался вручную сохранить экземпляр профилировщика (storage.Save()
), и он будет сохранен в хранилище. Но опять же, сохраненный результат не загружается при отображении результатов профилировщика (и, тем не менее, ни один из примеров, которые я видел, не требует от вас этого). У меня такое чувство, что я упустил какой-то момент в том, как должно работать хранилище.