|
|
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Как мне залогировать для отладки время с точностью до милисекунд? Пишу вот так: insert into trace_table select DBINFO('utc_to_datetime', sh_curtime), 'Procedure. Step 1.1.' from SysMaster:SysShmVals; Таблица следующего вида: create table trace_table (dt DateTime Year to second , txt varchar(100)); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 10:31 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Петров АндрейТаблица следующего вида: create table trace_table (dt DateTime Year to second , txt varchar(100)); сделать таблицу create table trace_table (dt DateTime Year to fraction , txt varchar(100)); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 11:28 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Петров АндрейКак мне залогировать для отладки время с точностью до милисекунд? Пишу вот так: insert into trace_table select DBINFO('utc_to_datetime', sh_curtime), 'Procedure. Step 1.1.' from SysMaster:SysShmVals; Таблица следующего вида: create table trace_table (dt DateTime Year to second , txt varchar(100)); Йо, а что в SysMaster:SysShmVals.sh_curtime с большей точностью, чем секунда? Какая версия Информикса? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 12:02 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Да Fraction я уже сам нарыл в доке. А вот насчет того как узнать это время незнаю. Использую DBINFO('utc_to_datetime', sh_curtime) вместо Current потому что Current в одной процедуре дает одно и то же значение. Подскажите как узнать время до миллисекунд внутри одной процедуры? Версия : Informix Dynamic Server Version 7.31.UD4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 12:36 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Петров АндрейДа Fraction я уже сам нарыл в доке. А вот насчет того как узнать это время незнаю. Использую DBINFO('utc_to_datetime', sh_curtime) вместо Current потому что Current в одной процедуре дает одно и то же значение. Подскажите как узнать время до миллисекунд внутри одной процедуры? Версия : Informix Dynamic Server Version 7.31.UD4 Петров Андрей ... select DBINFO('utc_to_datetime', sh_curtime) from SysMaster:SysShmVals ... собственно так в процедуре и получете текущее время. Сами же ответили на свой вопрос:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 12:57 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
авторсобственно так в процедуре и получете текущее время. Сами же ответили на свой вопрос:-) Читайте внимательнее... Оно возвращает до секунд а мне надо до миллисекунд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 12:59 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Петров АндрейОно возвращает до секунд а мне надо до миллисекунд. В ONCONFIG есть параметр USEOSTIME, который по умолчанию установлен в 0. В этом случае используется внутренний таймер IDS (для многих нужд, а не только для возврата времени функциям SQL, поэтому с ним движок работает быстрее) и он возвращает время округленное до секунд. Если USEOSTIME установить в 1, то точность временных функций уже будет зависеть от OS и платформы и редко превышает тысячные доли секунды. Следует заметить, что ранее на платформе Windows на некоторых версиях IDS установка USEOSTIME =1 приводила к проблемам (появлялись баги в работе некоторых функций), да и получить милисекунды все равно не удавалось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 13:44 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Хорошо. Тогда 2 вопроса: 1) Как это сделать - задать этот параметр = 1 2) И что будет если я его буду до Insert-а выставлять в 1 а после убирать в 0? :-) Система не упадет :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 13:51 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Петров АндрейХорошо. Тогда 2 вопроса: 1) Как это сделать - задать этот параметр = 1 2) И что будет если я его буду до Insert-а выставлять в 1 а после убирать в 0? :-) Система не упадет :-) параметр USEOSTIME вводится в действие при старте сервера. И вам он все равно не поможет, раз вам неудобно пользоваться CURRENT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 14:28 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Т.е. никак нельзя добиться точности в большей чем секунда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 14:53 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Вы милисекундные запросы в цикле точите? Нафига такая точность? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 14:56 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
create table trace_table (dt DateTime Year to fraction(3) default current Year to fraction(3), txt varchar(100)); drop procedure test_time; create procedure test_time() insert into trace_table (txt) values('Procedure. Step 1.1.'); -------------------------------------- end procedure; это вам поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 14:59 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
2 zefs И чем же мне это поможет? При выставленном USEOSTIME = 0? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 15:04 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Петров Андрей2 zefs И чем же мне это поможет? При выставленном USEOSTIME = 0? а что мешает выставить этот параметр, если вам так необходимы милисекудны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 15:07 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Хотелось бы увидеть еще варианты... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 15:16 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Петров АндрейХотелось бы увидеть еще варианты... Какие и чего ? Вроде внятно объяснили, что без выставления параметра в onconfig вы никогда не получите от функций большую точность, чем секунда. Мало того, это вовсе не гарантия, что милисекунды все же будут - зависит от версии IDS, ОС и платформы. Почитайте про аудит в информиксе - возможно там время более мелкое, только это трудоемкий вариант в любом случае ... И потом, самое главное, не что и как использовать, а ДЛЯ ЧЕГО ? Если объясните, для чего вам для отладки нужны милисекунды - возможно появятся новые варианты... Следует заметить, что один и тот же запрос может выполняться разное время, которое зависит не только от загрузки сервера, и для отладки (точнее, тайминга разных частей тяжелой процедуры) желательно тестовое время выполнения в десятках секунд, а лучше в минутах (как в реальных условиях и на реальных данных :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 15:25 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Имхо можно реализовать только через Datablade ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 15:53 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
2 Daugava Приведите пожалуйста пример... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 16:14 |
|
||
|
Время с точностью до милисекунд?
|
|||
|---|---|---|---|
|
#18+
Я имел ввиду, написать внешнюю процедуру на С, которая выполнит требуемые действия (вернет время с нужной точностью, например) или просто залогирует событие. Вот простейший пример использования EXTERNAL: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2006, 18:55 |
|
||
|
|

start [/forum/topic.php?fid=44&fpage=52&tid=1608750]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
20ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 340ms |

| 0 / 0 |
