Use of uninitialized value in concatena... Acct.pm line 327.

Установка, настройка, поддержка
Ответить
snooppy
Сообщения: 37
Зарегистрирован: Пн апр 29, 2013 7:20 am

Use of uninitialized value in concatena... Acct.pm line 327.

Сообщение snooppy »

На почту периодически сыпется данная ошибка

LOG_WARNING: CALCULATION [eUse of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.

Что бы это могло быть, NAS отдаёт некорректные данные?

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

....
[b]327 строка[/b] $self->query(
          $db, "INSERT INTO dv_log (uid, start, tp_id, duration, sent, recv, kb,  sum, nas_id, port_id,
          ip, CID, sent2, recv2, acct_session_id,.
          bill_id,
          terminate_cause,
          acct_input_gigawords,
          acct_output_gigawords ).
          VALUES ('$self->{UID}', FROM_UNIXTIME($RAD->{SESSION_START}), '$self->{TARIF_PLAN}', '$RAD->{ACCT_SESSION_TIME}',.
          '$RAD->{OUTBYTE}', '$RAD->{INBYTE}', '$self->{TRAF_TARIF}', '$self->{SUM}', '$NAS->{NAS_ID}',
          '$RAD->{NAS_PORT}', INET_ATON('$RAD->{FRAMED_IP_ADDRESS}'), '$RAD->{CALLING_STATION_ID}',
          '$RAD->{OUTBYTE2}', '$RAD->{INBYTE2}',  '$RAD->{ACCT_SESSION_ID}',.
          '$self->{BILL_ID}',
          '$RAD->{ACCT_TERMINATE_CAUSE}',
          '$RAD->{ACCT_INPUT_GIGAWORDS}',
          '$RAD->{ACCT_OUTPUT_GIGAWORDS}');", 'do'
        );


~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Use of uninitialized value in concatena... Acct.pm line

Сообщение ~AsmodeuS~ »

скорее всего сервер доступа не передаёт

$RAD->{ACCT_SESSION_ID}

snooppy
Сообщения: 37
Зарегистрирован: Пн апр 29, 2013 7:20 am

Re: Use of uninitialized value in concatena... Acct.pm line

Сообщение snooppy »

~AsmodeuS~ писал(а):скорее всего сервер доступа не передаёт

$RAD->{ACCT_SESSION_ID}
Все NAS(ы) передают Acct-Session-Id. Просматривал все пакеты с начало беды и до конца.

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

2013-11-17 23:35:03 LUse of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
Use of uninitialized value in concatenation (.) or string at /usr/abills/libexec/../Abills/mysql/Acct.pm line 327.
OG_WARNING: CALCULATION [login] NAS: 3 (192.168.2.1) Last Alive: 2067, Session-ID: 528923C2023800

Еще заметил, что это происходит из за нагруженной базы. Radius кричит:

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

Info: WARNING: Child is hung for request 17412186 in component <core> module <queue>.
Info: WARNING: Child is hung for request 17412069 in component accounting module perl.
Info: WARNING: Child is hung for request 17412149 in component <core> module <queue>.
Info: WARNING: Child is hung for request 17412150 in component accounting module perl.
Error: Request 17412416 has been waiting in the processing queue for 9 seconds.  Check that all databases are running properly!
Сколько одновременных сессий может обслуживать один сервер на борту только с Abills+mysql+radius? Поделитесь результатами. Со скольки онлайн необходимо вводить репликацию?
Сервер использует ресурсы только на 30 процентов.
Еще RAID0 c БД посмотрю iostat(ом) как себя чувствует.

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Use of uninitialized value in concatena... Acct.pm line

Сообщение ~AsmodeuS~ »

или возможно этот $RAD->{CALLING_STATION_ID}


в среднем может 20 - 30 тис

snooppy
Сообщения: 37
Зарегистрирован: Пн апр 29, 2013 7:20 am

Re: Use of uninitialized value in concatena... Acct.pm line

Сообщение snooppy »

Еще RAID0 c БД посмотрю iostat(ом) как себя чувствует.
RAID0 замечательно себя чувствует:

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

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sdb               0,00     7,84    0,01    7,96     0,45   267,84    67,33     0,00    0,27    1,51    0,26   0,18   0,14
~AsmodeuS~ писал(а):или возможно этот $RAD->{CALLING_STATION_ID}
Да и его нас передавать должен без ошибок. Но тут не уверен, будем посмотреть :D
~AsmodeuS~ писал(а):в среднем может 20 - 30 тис
Это замечательно.
Анализируя запросы к БД понял удивительную штуку, DV_LOG лучше не хранить более 5 месяцев. А то 10к записей перелопатить.
У LB еще давно встречал статистика была реализована по месяцам.
stats_201301 - за январь
stats_201212 - за декабрь
Может в будущем тоже смотреть в это направление?

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Use of uninitialized value in concatena... Acct.pm line

Сообщение ~AsmodeuS~ »

это не ошибка а предупреждение что не заполнен параметр

snooppy
Сообщения: 37
Зарегистрирован: Пн апр 29, 2013 7:20 am

Re: Use of uninitialized value in concatena... Acct.pm line

Сообщение snooppy »

~AsmodeuS~, спасибо. Убрал немного нагрузки с БД и данного предупреждения вот уже несколько дней не наблюдаю.

Ответить