А теперь попробуйте в русской локализации найти счетчик SQL: Buffer manager\Page life expectancy... Гугление особых результатов не дало. Дело в том, что в манах обычно указано именно англ. имя. Рядом может быть русское описание, но не факт что по нему можно выйти на то, что нужно. По опыту могу сказать, что можно выйти на то что НЕ нужно)) Например здесь есть таблица с рус. и английскими именами. Там для "Page life expectancy" синоним указан "Диспетчер буфера\Время без ссылки для страницы расширения". А это как выяснилось не так :) Я ни в коем случае не критикую - русский синоним может быть зависим от локализации. Да и черт ногу сломит в этих именах, зачем их вообще переводили - не понимаю. Однако, в моем случае синоним "Время без ссылки для страницы расширения" соответствовал англ. имени "Extension page unreferenced time". Единственный более-менее логичный способ поиска рус. имен по английским нашел в этой статье. Суть:
https://msdn.microsoft.com/en-us/library/ms189628.aspx
https://msdn.microsoft.com/ru-ru/library/ms189628.aspx
как получить русские названия: меняйте en-us на ru-ru в ссылке и получите перевод счетчиков на русский
Да только это тоже то еще занятие... Подумал я о таком варианте: что, если взять локализацию, и где-нибудь там сменить код языка? Тогда при выборе счетчика будут английские варианты, и долой проблемы. Зашел в папку установки SQL (у меня 2014 DE), нашел там ini-файл с описаниями: "C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn\perf-MSSQLSERVERsqlctr.ini". О, есть раздел с кодами локализаций!
Думаю - сейчас поменяю коды, выполню в power shell: "lodctr <ИмяФайла>", и проблема решена!
Однако, не тут-то было. Во-первых power shell заглючил при вставке пути к файлу. А именно - поудалял все заглавные буквы. wtf?.... Погуглил, оказалось проблема известна, и лечится так:
- выполняем в консоли "Remove-Module PSReadLine"
- Закрываем консоль, удаляем папку "C:\Program Files\WindowsPowerShell\Modules\PSReadLine"
- открываем консоль, выполняем Install-Module PSReadLine, на все вопросы отвечаем Y
Ура! Путь вставляется. Думаете, помогло? Ну разумеется нет)) Стал бы я статью писать...
В общем, при таком подходе консоль бодро отрапортовала "Ошибка: Не удается восстановить счетчики производительности из файла архива C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn\perf-MSSQLSERVERsqlctr.ini, код ошибки 1006". И даже гугл не помог, что сие значит. Откатил файлик, и понял что вариантов немного: либо использовать какую-то стороннюю утилиту для настройки счетчиков (не нашел), либо самому распарсить файл описаний и иметь на руках не вызывающее подозрений соответствие английских и русских имен. Через ~1,5 часа обработка была готова:
Приложена к статье. Только упр. форма, без асинхрона, проверена на платформе 8.3.14.2095 с режимом совместимости 8.2.16; все просто - надо только найти нужный ini-файл описаний, указать к нему путь.
Ура! Теперь я могу в манах посмотреть какой счетчик нужен, найти его русский синоним, и добавить в сборщик