Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
Помогите! Пример: запускаете такое "select gh from kj" а получаете такое: Server: Msg 208, Level 16, State 1, Line 1 Invalid object name 'kj'. ...и это логично. Теперь вопрос: хочу перехватить этот самый Msg именно в этом виде и запихнуть в таблицу. Номер ошибки не есть достаточно . Подскажите, что делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2001, 13:26 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2001, 08:51 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
Саша, простите пожалуйсто, но можно то же только для ламера: куды, чаво и зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2001, 10:46 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
2 Mycca Если "только для ламера" - то это сделать невозможно. Хотя в принципе ошибку можно поймать внутри сервера, написав свою хр_процедуру, но это довольно сложно и никто так не делает. А зачем это Вам надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2001, 13:20 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
В переменной @@ERROR хранится номер произошедшей ошибки, а в таблице sysmessages базы Master можно получить описание этой ошибки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2001, 06:49 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
2СержСупер: ну скажем не совсем ламера, но по ссылке (см. выше) я ничего полезного не нашел. 2таблоид: близко, но проблема что в sysmessages хронятся "общие" формулировки, без имен объектов. То есть в моем примере это выглядет где-то так : Invalid object name '%d', а мне нужно вместо %d конкретное имя . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2001, 07:00 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
Тогда вопрос: "А зачем это Вам надо?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2001, 08:09 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
2 Mycca Ссылку давал не я, так что тут претензии не ко мне. Для "не совсем ламера" это тоже невозможно. Если Вам не лень копаться в архитектуре сервера, наберите в BOL топик "ODS", прочитайте внимательно всё что там написано, и если Вы всё поймёте, то напишите расширенную процедуру, которая бы вызывалась примерно так: exec xp_mussa_execute "select gh from kj" а в результате записывала бы что надо куда Вам надо. В принципе это реально. Но мне за 6 лет так и не захотелось так сделать. Может чем придумывать мудрёные задачи, Вы всё-таки напишите что Вам надо и мы вместе подумаем как это решить? Такое чувство, что Вы не с того начинаете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2001, 08:48 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
Зачем надо? Во-первых начальство хочет. Во-вторых: клиент запускает процедуры для загрузки данных в warehouse. Все это бежит несколько часов. Ошибки загрузки (коих может быть немало) остаются скрытыми. Максимум что можно узнать это имя "проштрафившейся" процедуры. Идея: написать процедуру, которая вызывалась бы в "опасных" местах (после insert-ов, update-ов и т.д.) и заносило сообщение об ошибке в таблицу. Номер ошибки не достаточен ибо несет общую информацию, а надо более полную-какой объект ведет себя плохо и почему собственно. Вот так! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2001, 13:10 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
2 Mycca >Во-первых начальство хочет. Я так понимаю, это была шутка. На мой взгяд такие желания у начальства - из разряда извращений. >Во-вторых: клиент запускает процедуры для загрузки данных в warehouse. Все это бежит несколько часов. Ошибки загрузки (коих может быть немало) остаются скрытыми. Если Вы имели ввиду ошибки компиляции, то они должны быть выявлены еще до стадии тестирования. Если имеется ввиду ошибки по ходу выполнения, то мне кожется проще было бы вести некий протокол, куда записывать в начале и в конце выполнения длинных процессов нечто о том, что будет делаться и что сделалось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2001, 14:08 |
|
||
|
Как ловить месэдж ошибки на сервере? Помогите!
|
|||
|---|---|---|---|
|
#18+
2 Серж: нет, это не шутка . Начальство есть сам программер, т.е. извращенец по определению. О протоколе....идея обсуждалась, но она не удовлетворяет основного условия: точное определение места и причины ошибки. Поделюсь идеей которая сейчас "прорабатывается": вытаскивание инфо из буффера с помощью DBCC OUTPUTBUFFER(@@spid) и последующей обработкой. Хотя и здесь есть недостатки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2001, 14:41 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32015884&tid=1825217]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 353ms |

| 0 / 0 |
