|
|
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Можно ли каким-либо образом сохранить output в файл например при работе хранимой процедуры. Идея в следущем достаточно сложный механизм обновления работает через почту, хотелось бы чтобы при возникновении ошибки весь вывод хранимых процедур высылася на e-mail, для анализа проблемы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 10:54:29 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Посмотрите здесь /topic/10076 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 11:15:42 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Вроде близко, но не о том. Мне то не результаты запросов нужно сохранить, а то что выводиться в нижнию часть окна в QA при выполнение хранимой процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 11:31:48 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
osql utility ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 11:51:44 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Добрый день Что-то не пойму: если в Query Analyzer'е необходимо сохранять, то это просто... Если в приложении (например, работающем через ADO), то ошибки находятся в соответствующих коллекциях объектов (например, Connection.Errors). Удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 12:07:08 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Так же не не много не о том. Вот есть хранимая процедура, если запускать ее в QA output скажем такой: intDistributors.txt intProducts.txt Mail sent. ----- NULL Starting copy... NULL 9 rows copied. Network packet size (bytes): 4096 Clock Time (ms.): total 1 Avg 0 (9000.00 rows per sec.) (6 row(s) affected) output ----- SQLState = S1000, NativeError = 0 Error = [Microsoft][ODBC SQL Server Driver]Unable to open BCP host data-file (2 row(s) affected) output Mail sent. ----------- 2 1$[WP-2` 1$N.MOQP \\ но эта информация никуда не выводится когда процедура вызывается из кода и она не нужна если код работает корректно, но если происходит ошибка, то хотелось бы этот листинг получить. Но я же не могу вместо каждого exec имяХранимой процедуры ставить oqsl ..., или после возникновения ошибки еще раз вызывать хранимую процедуру чтобы снять с нее листинг вывода, она же какие-то действия делает. или я что то неправильно понял в работе утилиты osql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 12:26:26 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Тогда jimmers правильно говорит. В приложении перехватывайте ошибку и анализируйте соответствующую коллекцию. Там все будет - вплоть до сообщений типа "3 rows affected". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 12:48:20 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Можно по-подробнее про анализ коллекции, что нужно анализировать. Приложение sql server (tsql). Mне нужен не только вывод оператора вызвашего ошибку, а весь вывод процедуры (как правило причина ошибки находиться раньше места где "рвется") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 13:01:40 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
То есть вы хотите внутри sp увидеть ее output? Не, так не выйдет. Ну, в смысле нет предела извращениям, но простым и естественным способом не выйдет. Мне кажется, что сам подход неверен. Такие вещи более правильно вынести в обработчик на клиентской стороне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 13:11:05 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
Видимо я плохо доношу свои мысли, пытаюсь исправться: нет внутри я видеть ничего не хочу. Скажем есть одна главная хранимая процедура, в ней есть только вызовы других хранимых процедур, если один из вызовов порождает ошибку, главная процедура прекращает выолнение низлежащих команд, а листинги вывода уже выполнившихся комманд (хр. процедур) отсылаются на e-mail. Я думал это как то просто делается типа перенаправление потоков (unix, dos), но видимо это не так. что типа sp_cmdshell 'ля-ля >file.txt' имя хранимой процедуры > файл куда перенаправляется выход ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 13:35:02 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
RAISERROR WITH LOG ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2002, 10:35:00 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
2 Michael Hopgarden: а как быть, если несколько приложений будут кидать такие ошибки? Как их различать? А несколько разных коннектов внутри одного приложения? 2 -=Alexey=-: что, если попробовать профайлером это делать? Настроить фильтр, который будет только ошибки ловить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2002, 13:04:35 |
|
||
|
Сохранение output потока в файл
|
|||
|---|---|---|---|
|
#18+
2 GreenSunrise. Вы меня удивляете. Кто мешает при вызове RAISERROR сформировать msg_str? Да и указал я на метод лишь потому, что -=Alexey=- не захотел прислушаться к Вашему совету от 11 сен 02, 13:11 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2002, 10:49:11 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32049617&tid=1820374]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 394ms |

| 0 / 0 |
