|
Настройка 1с ЦУП:КИП | ☑ | ||
---|---|---|---|---|
0
ikbokov
17.06.14
✎
13:52
|
Помогите разобраться, уже все перепробовал.
http://s020.radikal.ru/i710/1406/52/b80861bfdb56.png На всем известном ресурсе рассматривается аналогичная ошибка Counters.cpp : 112 (0xc0000bb8) – Не удалось добавить счетчик производительности Решение предлагают: Переименовать в коде имена счетчиков с английского наименования на русское (если используется русская локализация MS SQL Server). На сервере (у нас русская локализация) имена счетчиков на английском залез проверил, все права нужные по инструкции выдали пользователю, от которого ЦУП запускается, в Пользователей Системного Монитора добавили, так что по инструкции тоже все верно. |
|||
1
ikbokov
17.06.14
✎
14:07
|
На сервере:
http://s018.radikal.ru/i518/1406/28/752f9f7d53e3.png кусок кода КИПа: /////////////////////////////////////////////////////////////////////////////// // СЧЕТЧИКИ ПРОИЗВОДИТЕЛЬНОСТИ // Сформировать имя счетчика производительности // // Параметры: // Компьютер - Строка, имя или IP-адрес компьютера с которого будут получаться // значения счетчиков производительности. Можно не указывать, если // значения получаются со своего компьютера // Объект - Строка, имя физического компонента системы (процессор, диск, ...) // или объекта системы (процессы, потоки, ...) // Экземпляр - Строка, экземпляр объекта // Родитель - Строка, родительский экземпляр объекта // Индекс - Строка, номер экземпляра объекта, применимый если несколько // экземпляров одного объекта имеют одинаковое имя // // Возвращаемое значение: // Строка - полное имя счетчика производительности // Функция ИмяСчетчика(Объект, Счетчик, Компьютер = "", Экземпляр = "", Родитель = "", Индекс = "") Экспорт ПолноеИмя = ""; Если Не ПустаяСтрока(Компьютер) Тогда ПолноеИмя = "\\" + Компьютер; КонецЕсли; ПолноеИмя = ПолноеИмя + "\" + Объект; ЕстьРодитель = Не ПустаяСтрока(Родитель); ЕстьЭкземпляр = Не ПустаяСтрока(Экземпляр); ЕстьИндекс = Не ПустаяСтрока(Индекс); Если ЕстьРодитель Или ЕстьЭкземпляр Или ЕстьИндекс Тогда ПолноеИмя = ПолноеИмя + "("; Если ЕстьРодитель Тогда ПолноеИмя = ПолноеИмя + Родитель + "/"; КонецЕсли; Если ЕстьЭкземпляр Тогда ПолноеИмя = ПолноеИмя + Экземпляр; КонецЕсли; Если ЕстьИндекс Тогда ПолноеИмя = ПолноеИмя + "#" + Индекс; КонецЕсли; ПолноеИмя = ПолноеИмя + ")"; КонецЕсли; ПолноеИмя = ПолноеИмя + "\" + Счетчик; Возврат ПолноеИмя; КонецФункции // ИмяСчетчика() // Получить имя объекта счетчиков SQL Server // // Параметры: // ИмяСервера - Строка, полное имя сервера СУБД // Класс - Строка, класса объекта // // Возвращаемое значение: // Строка - имя объекта // Функция ИмяОбъектаСчетчиковMSSQL(ИмяСервера, Класс) Экспорт СоставИмени = КипОбщий.РазделитьСтроку(ИмяСервера, "\"); Имя = ?(СоставИмени.Количество() > 1, "MSSQL$" + СоставИмени[1], "SQLServer"); Возврат Имя + ":" + Класс; КонецФункции // ИмяОбъектаСчетчиковMSSQL() // Получить имя сервера из имени сервера СУБД // // Параметры: // ИмяСервера - Строка, полное имя сервера СУБД // // Возвращаемое значение: // Строка - имя компьютера, на котором запущен сервер СУБД // Функция ИмяСервераMSSQL(ИмяСервера) Экспорт СоставИмени = КипОбщий.РазделитьСтроку(ИмяСервера, "\"); Возврат СоставИмени[0]; КонецФункции // ИмяОбъектаСчетчиковMSSQL() // Получить полное имя счетчика количетва ожиданий на блокировках MSSQL // // Параметры: // ИмяСервера - Строка, полное имя экземпляра сервера СУБД // // Возвращаемое значение: // Строка - полное наименование показателя // Функция ИмяСчетчикаКоличествоОжиданийMSSQL(ПолноеИмяСервера) Экспорт Объект = ИмяОбъектаСчетчиковMSSQL(ПолноеИмяСервера, "Locks"); ИмяСервера = ИмяСервераMSSQL(ПолноеИмяСервера); Возврат ИмяСчетчика(Объект, "Lock Timeouts (timeout > 0)/sec", ИмяСервера, "_Total"); КонецФункции // ИмяСчетчикаКоличествоОжиданийMSSQL() // Получить полное имя счетчика количетва взаимоблокировок MSSQL // // Параметры: // ПолноеИмяСервера - Строка, полное имя экземпляра сервера СУБД // // Возвращаемое значение: // Строка - полное наименование показателя // Функция ИмяСчетчикаКоличествоВзаимоблокировокMSSQL(ПолноеИмяСервера) Экспорт Объект = ИмяОбъектаСчетчиковMSSQL(ПолноеИмяСервера, "Locks"); ИмяСервера = ИмяСервераMSSQL(ПолноеИмяСервера); Возврат ИмяСчетчика(Объект, "Number of Deadlocks/sec", ИмяСервера, "_Total"); КонецФункции // ИмяСчетчикаКоличествоВзаимоблокировокMSSQL() |
|||
2
CyberNut
17.06.14
✎
14:52
|
А агент сервера 1С:Предприятие на котором крутится ЦУП от доменной учетки работает?
|
|||
3
ikbokov
17.06.14
✎
15:08
|
(2) Если правильно вас понял, да работает
|
|||
4
ikbokov
17.06.14
✎
15:12
|
(3) upd, посмотрел, работает от другой учетки чисто под службы 1с
|
|||
5
CyberNut
17.06.14
✎
16:59
|
Попробуйте добавить учетку от которой работает сервер 1С в группу пользователей системного монитора.
Посмотрел, у меня добавлена. SQL Server русский, счетчики не переименовывал. Как правило все проблемы были связаны с правами доступа. |
|||
6
ikbokov
18.06.14
✎
06:02
|
Пробовали, добавлен
|
|||
7
упс
18.06.14
✎
06:37
|
(0) попробуйте запустить ЦУП (клиент 1С предприятия) под администратором домена, у которого железно все права есть. И если запускаете предприятие через стартер, убедитесь, что потом "сам" клиент под тем же самым пользователем запускается. Возможно я что-то путаю, но, вроде бы, был у меня с этим какой-то косяк.
|
|||
8
ikbokov
18.06.14
✎
08:10
|
(7) Запустили, ничего не изменилось, клиент под тем же пользователем был, проверил
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |