VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Asterisk+ODBC oracle

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Ответить
nrammstein
Сообщения: 5
Зарегистрирован: 28 сен 2015, 10:44

Asterisk+ODBC oracle

Сообщение nrammstein »

Добрый день, столкнулся с такой проблемой, настраиваю odbc для взаимодействия с oracle, проблема в том, что как только делаю команду в cli: odbc show , мне выдает следующее

Код: Выделить всё

[2015-09-28 10:47:28] WARNING[23035]: res_odbc.c:758 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[2015-09-28 10:47:28] DEBUG[23035]: res_odbc.c:1493 odbc_obj_disconnect: Disconnected 0 from oracle [ast]
[2015-09-28 10:47:28] DEBUG[23035]: res_odbc.c:1500 odbc_obj_disconnect: Database handle 0x7fd3c0017570 deallocated
[2015-09-28 10:47:28] NOTICE[23035]: res_odbc.c:1527 odbc_obj_connect: Connecting oracle
[2015-09-28 10:47:28] NOTICE[23035]: res_odbc.c:1559 odbc_obj_connect: res_odbc: Connected to oracle [ast]
и так каждый раз, после вывода команды

через isql конектит

Код: Выделить всё

[root@office-pbx asterisk]# isql -v ast
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> quit
odbcinst.ini

Код: Выделить всё

[OracleODBC-12.1]
Description = Oracle ODBC driver for Oracle
Driver = /usr/lib64/libsqora.so.12.1
FileUsage = 1
Driver Logging = 7
odbc.ini

Код: Выделить всё

[ast]
Description = myoracledb database
Driver = OracleODBC-12.1
Trace = yes
TraceFile = /tmp/odbc_oracle.log
ServerName = //server-ip:1521/dboracle
UserID = user
Password = pass
Charset = utf8
res-odbc.conf

Код: Выделить всё

[oracle]
enabled => yes
dsn => ast
limit => 20
username => user
password => pass
pre-connect => yes
pooling => no
Может сможет кто подсказать, в чем причина?
Для mysql настраивал odbc там без проблем, конект не теряет
Glukinho
Сообщения: 661
Зарегистрирован: 07 янв 2011, 20:05

Re: Asterisk+ODBC oracle

Сообщение Glukinho »

Я бы почитал /tmp/odbc_oracle.log
nrammstein
Сообщения: 5
Зарегистрирован: 28 сен 2015, 10:44

Re: Asterisk+ODBC oracle

Сообщение nrammstein »

Логи не пишутся
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Asterisk+ODBC oracle

Сообщение zzuz »

Во-первых , файл res-odbc.conf не используется астериском. Это какое-то от балды придуманное название .
Во-вторых , одного файла описания соединения мало. нет cdr_odbc.conf
Линия24 - Системы Массового Телефонного Обслуживания
nrammstein
Сообщения: 5
Зарегистрирован: 28 сен 2015, 10:44

Re: Asterisk+ODBC oracle

Сообщение nrammstein »

файл конфигурации астериска res_odbc.conf
cdr настроены через mysql

odbc настраиваю для иных задач, должен быть конект с базой.
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Asterisk+ODBC oracle

Сообщение zzuz »

Ну есть res_odbc.conf и что дальше должно быть по вашему мнению?
Линия24 - Системы Массового Телефонного Обслуживания
BorisTheBlade
Сообщения: 167
Зарегистрирован: 14 фев 2011, 14:24

Re: Asterisk+ODBC oracle

Сообщение BorisTheBlade »

zzuz , вы не прав :D
Опечатался человек, конфиг у него res_odbc.conf, он написал об этом.
Зачем cdr_odbc.conf, если например не используешь логирование в базу, а просто нужно запрос в базу сделать через func_odbc?

nrammstein, вам нужно с логированием разобраться. Почему лог не пишется, а может пишется, но в другой файл.
nrammstein
Сообщения: 5
Зарегистрирован: 28 сен 2015, 10:44

Re: Asterisk+ODBC oracle

Сообщение nrammstein »

у меня стоит версия Asterisk 1.8.11-cert9
конфигурится в res_odbc.conf
в func_odbc.conf пишутся функции, для использования в диалплане
Или я что-то не так понимаю?



такая же конфигурация для mysql работает нормально, вот пример

Код: Выделить всё

office-pbx*CLI> odbc show

ODBC DSN Settings
-----------------

  Name:   aon
  DSN:    aon
    Last connection attempt: 1970-01-01 03:00:00
  Pooled: No
  Connected: Yes

  Name:   oracle
  DSN:    oracle
    Last connection attempt: 1970-01-01 03:00:00
  Pooled: No
  Connected: Yes

[2015-09-29 10:20:42] WARNING[26240]: res_odbc.c:758 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[2015-09-29 10:20:42] DEBUG[26240]: res_odbc.c:1493 odbc_obj_disconnect: Disconnected 0 from oracle [oracle]
[2015-09-29 10:20:42] DEBUG[26240]: res_odbc.c:1500 odbc_obj_disconnect: Database handle 0x7fd3c0154000 deallocated
[2015-09-29 10:20:42] NOTICE[26240]: res_odbc.c:1527 odbc_obj_connect: Connecting oracle
[2015-09-29 10:20:42] NOTICE[26240]: res_odbc.c:1559 odbc_obj_connect: res_odbc: Connected to oracle [oracle]
Но оракл почему-то дисконектит
nrammstein
Сообщения: 5
Зарегистрирован: 28 сен 2015, 10:44

Re: Asterisk+ODBC oracle

Сообщение nrammstein »

BorisTheBlade писал(а):zzuz , вы не прав :D
Опечатался человек, конфиг у него res_odbc.conf, он написал об этом.
Зачем cdr_odbc.conf, если например не используешь логирование в базу, а просто нужно запрос в базу сделать через func_odbc?

nrammstein, вам нужно с логированием разобраться. Почему лог не пишется, а может пишется, но в другой файл.
Спасибо
Лог настроил, выдает следующее:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
[ODBC][14573][1443517243.026966][__handles.c][450]
Exit:[SQL_SUCCESS]
Environment = 0x7fd3dc1d0ae0
[ODBC][14573][1443517243.027116][SQLSetEnvAttr.c][182]
Entry:
Environment = 0x7fd3dc1d0ae0
Attribute = SQL_ATTR_ODBC_VERSION
Value = 0x3
StrLen = 0
[ODBC][14573][1443517243.027171][SQLSetEnvAttr.c][349]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.027262][SQLAllocHandle.c][364]
Entry:
Handle Type = 2
Input Handle = 0x7fd3dc1d0ae0
[ODBC][14573][1443517243.027320][SQLAllocHandle.c][482]
Exit:[SQL_SUCCESS]
Output Handle = 0x7fd3dc035db0
[ODBC][14573][1443517243.027320][SQLAllocHandle.c][482]
Exit:[SQL_SUCCESS]
Output Handle = 0x7fd3dc035db0
[ODBC][14573][1443517243.027379][SQLSetConnectAttr.c][321]
Entry:
Connection = 0x7fd3dc035db0
Attribute = SQL_ATTR_LOGIN_TIMEOUT
Value = 0xa
StrLen = 0
[ODBC][14573][1443517243.027446][SQLSetConnectAttr.c][504]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.027509][SQLSetConnectAttr.c][321]
Entry:
Connection = 0x7fd3dc035db0
Attribute = SQL_ATTR_CONNECTION_TIMEOUT
Value = 0xa
StrLen = 0
[ODBC][14573][1443517243.027599][SQLSetConnectAttr.c][504]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.027599][SQLSetConnectAttr.c][504]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.027656][SQLConnect.c][3614]
Entry:
Connection = 0x7fd3dc035db0
Server Name = [oracle][length = 6 (SQL_NTS)]
User Name = [platex_ro][length = 9 (SQL_NTS)]
Authentication = [*********][length = 9 (SQL_NTS)]
UNICODE Using encoding ASCII 'ISO8859-1' and UNICODE 'UCS-2LE'

[ODBC][14573][1443517243.203166][SQLConnect.c][4188]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.203413][SQLSetConnectAttr.c][321]
Entry:
Connection = 0x7fd3dc035db0
Attribute = SQL_ATTR_AUTOCOMMIT
Value = 0x1
StrLen = 0
[ODBC][14573][1443517243.203494][SQLSetConnectAttr.c][675]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.203549][SQLSetConnectAttr.c][321]
Entry:
Connection = 0x7fd3dc035db0
Attribute = SQL_ATTR_TXN_ISOLATION
Value = 0x2
StrLen = 0
[ODBC][14573][1443517243.203549][SQLSetConnectAttr.c][321]
Entry:
Connection = 0x7fd3dc035db0
Attribute = SQL_ATTR_TXN_ISOLATION
Value = 0x2
StrLen = 0
[ODBC][14573][1443517243.203600][SQLSetConnectAttr.c][675]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.203600][SQLSetConnectAttr.c][675]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.203710][SQLDisconnect.c][204]
Entry:
Connection = 0x7fd3dc12c420
[ODBC][14573][1443517243.225514][SQLDisconnect.c][341]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.225636][SQLFreeHandle.c][279]
Entry:
Handle Type = 2
Input Handle = 0x7fd3dc12c420
[ODBC][14573][1443517243.225636][SQLFreeHandle.c][279]
Entry:
Handle Type = 2
Input Handle = 0x7fd3dc12c420
[ODBC][14573][1443517243.225694][SQLFreeHandle.c][330]
Exit:[SQL_SUCCESS]
[ODBC][14573][1443517243.225809][SQLFreeHandle.c][212]
Entry:
Handle Type = 1
Input Handle = 0x7fd3dc0dce40
Этот лог при reload res_odbc.so
Если делать odbc show то лог не пишется
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH