LINUX.ORG.RU

Сообщения mkondratev

 

XML парес в MySQL

Форум — Development

Добрый день. Столкнулся со следующей проблемой. У поставщика имеется xml файл со следующим содержанием:

<offer id="" available="true">
<url></url>
<price_opt></price_opt>
<opt_list_price></opt_list_price>
<price></price>
<list_price></list_price>
<currencyId></currencyId>
<categoryId></categoryId>
<picture>ссылка на картину 1</picture>
<picture>ссылка на картину 2</picture>
<picture>ссылка на картину 3</picture>
<picture>ссылка на картину 4</picture>
<picture>ссылка на картину 5</picture>
<name></name>
<vendor></vendor>
<vendorCode></vendorCode>
<description></description>
<dimensions></dimensions>
<is_female></is_female>
<is_male></is_male>
<Страна></Страна>
<Производство></Производство>
<Материал></Материал>
</offer>

я у себя создал базу:

CREATE TABLE `offers` (
  `id` int(11) NOT NULL DEFAULT '0',
  `available` enum('true') DEFAULT NULL,
  `url` text,
  `price_opt` int(11) DEFAULT NULL,
  `opt_list_price` int(11) DEFAULT NULL,
  `price` int(11) DEFAULT NULL,
  `list_price` int(11) DEFAULT NULL,
  `currencyId` text,
  `categoryId` int(11) DEFAULT NULL,
  `picture` text,
  `name` text,
  `vendor` text,
  `vendorCode` text,
  `description` text,
  `dimensions` text,
  `is_female` enum('1','0') DEFAULT NULL,
  `is_male` enum('1','0') DEFAULT NULL,
  `Страна` text,
  `Производство` text,
  `Материал` text,
  `Цвет` text,
  `Размер` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

и извлекаю данные из xml командой:

LOAD XML INFILE '/tmp/sync/opt.xml' into table database.offers character set utf8 rows identified by '<offer>';

И все вроде бы хорошо, но в колонку

`picture` text,
извлекается последняя ссылка из всех. То есть, если у поставщика будет 5 ссылок, в таблицу добавится только последняя. Подскажите, как выйти из данной ситуации?

 ,

mkondratev
()

Digium R850 + pacemaker + corosync

Форум — Admin

Добрый день! Не получается корректно настроить pacemaker по этой инструкции : http://habrahabr.ru/post/160521/ Дошел до пункта обновления конфига pacemaker.cfg.

В логах выдает ошибку:

[root@astnode01 pacemaker]# crm configure load update pacemaker.cfg
lrmadmin[6560]: 2014/12/25_12:40:37 ERROR: lrm_get_rsc_type_metadata(578): got a return code HA_FAIL from a reply message of rmetadata with function get_ret_from_msg.
ERROR: ocf:Digium:asterisk: could not parse meta-data:
lrmadmin[6594]: 2014/12/25_12:40:37 ERROR: lrm_get_rsc_type_metadata(578): got a return code HA_FAIL from a reply message of rmetadata with function get_ret_from_msg.
ERROR: ocf:Digium:rseries: could not parse meta-data:
ERROR: ocf:Digium:asterisk: could not parse meta-data:
ERROR: ocf:Digium:asterisk: no such resource agent
WARNING: Asterisk_drbd: default timeout 20s for start is smaller than the advised 240
WARNING: Asterisk_drbd: default timeout 20s for stop is smaller than the advised 100
WARNING: Asterisk_drbd: action monitor not advertised in meta-data, it may not be supported by the RA
WARNING: Asterisk_fs: default timeout 20s for start is smaller than the advised 60
WARNING: Asterisk_fs: default timeout 20s for stop is smaller than the advised 60
WARNING: GatewayStatus: default timeout 20s for start is smaller than the advised 60
WARNING: GatewayStatus: specified timeout 10 for monitor is smaller than the advised 60
ERROR: ocf:Digium:rseries: could not parse meta-data:
ERROR: ocf:Digium:rseries: no such resource agent

Сам конфиг:

node astnode01
node astnode02
primitive Asterisk ocf:Digium:asterisk \
        op monitor interval="5"
primitive Asterisk_drbd ocf:linbit:drbd \
        params drbd_resource="asterisk" \
        op monitor start-delay="10" interval="5"
primitive Asterisk_fs ocf:heartbeat:Filesystem \
        params device="/dev/drbd/by-res/asterisk" directory="/mnt/asterisk/" fstype="ext3"
primitive ClusterIP ocf:heartbeat:IPaddr2 \
        params ip="10.4.2.151" cidr_netmask="32" \
        op monitor interval="5"
primitive GatewayStatus ocf:pacemaker:ping \
        params host_list="10.4.2.1" multiplier="100" \
        op monitor interval="5" timeout="10"
primitive rseries0 ocf:Digium:rseries \
        params tty="/dev/rseries0" \
        op monitor interval="10" role="Master" \
        op monitor interval="60" role="Slave"
ms Asterisk_ms Asterisk_drbd \
        meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true"
ms rseries0_ms rseries0 \
        meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" target-role="Master"
clone GatewayStatusClone GatewayStatus
location Asterisk-with-ping Asterisk \
        rule $id="Asterisk-with-ping-rule" -inf: not_defined pingd or pingd lte 0
colocation Everything-with-Asterisk inf: ( rseries0_ms:Master Asterisk_ms:Master ) ( ClusterIP Asterisk_fs ) Asterisk
order Asterisk-after-Everything inf: ( rseries0_ms:promote Asterisk_ms:promote ) ( ClusterIP Asterisk_fs ) Asterisk:start
property $id="cib-bootstrap-options" \
        cluster-infrastructure="openais" \
        expected-quorum-votes="2" \
        stonith-enabled="false" \
        no-quorum-policy="ignore"
rsc_defaults $id="rsc-options" \
        resource-stickiness="99"

В чем может быть проблема?

Elastix 2.5

Конфиг corosync:

totem {
    version: 2
    token: 3000
    token_retransmits_before_loss_const: 10
    join: 60
    consensus: 5000
    vsftype: none
    max_messages: 20
    clear_node_high_bit: yes
        secauth: off
        threads: 0
        rrp_mode: none

        interface {
        ringnumber: 0
        bindnetaddr: 10.4.2.0
        broadcast: yes
        mcastport: 5405
        member {
            memberaddr: 10.4.2.101
        }
        member {
            memberaddr: 10.4.2.102
        }
    }
}

aisexec {
    user:       root
    group:      root
}

logging {
    fileline: off
    to_stderr: yes
    to_logfile: no
    to_syslog: yes
    syslog_facility: daemon
    debug: off
    timestamp: on
    logger_subsys {
        subsys: AMF
        debug: off
        tags: enter|leave|trace1|trace2|trace3|trace4|trace6
    }
}

amf {
    mode: disabled
}

 , ,

mkondratev
()

MySQL запрос к Asterisk

Форум — General

Приветствую, подскажите. Задача: выяснить в максимальное количество одновременных звонков в астериске на сентябрь. Для этого нужно разделить месяц на периоды в 10 секунд и посчитать количество выводимых строк со статусом ANSWERED. К примеру:

SELECT COUNT(*) FROM `cdr` WHERE `calldate` BETWEEN '2014-09-01 00:00:00' AND '2014-09-01 00:00:10' AND `disposition` = "ANSWERED"
Но, не могу же я считать каждые 10 секунд, это получится 259200 запросов.

Подскажите как упросить?

mkondratev
()

pacemaker + mysql + asterisk + httpd

Форум — Admin

Добрый день Подскажите как настроить чтобы при переключении между нодами выключались службы mysqld и httpd? Сейчас при переключении гасится только asterisk.

Конфиг pacemaker.cfg.

node astnode01
node astnode02
primitive Asterisk ocf:Digium:asterisk \
        op monitor interval="5"
primitive Asterisk_drbd ocf:linbit:drbd \
        params drbd_resource="asterisk" \
        op monitor start-delay="10" interval="5"
primitive Asterisk_fs ocf:heartbeat:Filesystem \
        params device="/dev/drbd/by-res/asterisk" directory="/mnt/asterisk/" fstype="ext3"
primitive ClusterIP ocf:heartbeat:IPaddr2 \
        params ip="10.4.2.151" cidr_netmask="32" \
        op monitor interval="5"
primitive GatewayStatus ocf:pacemaker:ping \
        params host_list="10.4.2.1" multiplier="100" \
        op monitor interval="5" timeout="10"
primitive rseries0 ocf:Digium:rseries \
        params tty="/dev/rseries0" \
        op monitor interval="10" role="Master" \
        op monitor interval="60" role="Slave"
ms Asterisk_ms Asterisk_drbd \
        meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true"
ms rseries0_ms rseries0 \
        meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" target-role="Master"
clone GatewayStatusClone GatewayStatus
location Asterisk-with-ping Asterisk \
        rule $id="Asterisk-with-ping-rule" -inf: not_defined pingd or pingd lte 0
colocation Everything-with-Asterisk inf: ( rseries0_ms:Master Asterisk_ms:Master ) ( ClusterIP Asterisk_fs ) Asterisk
order Asterisk-after-Everything inf: ( rseries0_ms:promote Asterisk_ms:promote ) ( ClusterIP Asterisk_fs ) Asterisk:start
property $id="cib-bootstrap-options" \
        dc-version="1.0.12-unknown" \
        cluster-infrastructure="openais" \
        expected-quorum-votes="2" \
        stonith-enabled="false" \
        no-quorum-policy="ignore"
rsc_defaults $id="rsc-options" \
        resource-stickiness="99"

Пробовал добавлять

primitive Asterisk_httpd ocf:heartbeat:apache \
        params configfile="/etc/httpd/conf/httpd.conf" \
        op start interval="0s" timeout="60s" \
        op monitor interval="5s" timeout="20s" \
        op stop interval="0s" timeout="60s"
Выводит ошибку
[root@astnode01 ~]# crm status
============
Last updated: Wed Sep  3 12:26:25 2014
Stack: openais
Current DC: astnode02 - partition with quorum
Version: 1.0.12-unknown
2 Nodes configured, 2 expected votes
7 Resources configured.
============
 
Online: [ astnode01 astnode02 ]
 
 Asterisk       (ocf::Digium:asterisk): Started astnode02
 Asterisk_fs    (ocf::heartbeat:Filesystem):    Started astnode02
 ClusterIP      (ocf::heartbeat:IPaddr2):       Started astnode02
 Master/Slave Set: Asterisk_ms
     Masters: [ astnode02 ]
     Slaves: [ astnode01 ]
 Master/Slave Set: rseries0_ms
     Masters: [ astnode02 ]
     Slaves: [ astnode01 ]
 Clone Set: GatewayStatusClone
     Started: [ astnode01 astnode02 ]
 
Failed actions:
    Asterisk_httpd_start_0 (node=astnode02, call=18, rc=-2, status=Timed Out): unknown exec error
    Asterisk_httpd_start_0 (node=astnode01, call=9, rc=1, status=complete): unknown error

 , , ,

mkondratev
()

Ejabberd 2.1.13 не стартует

Форум — General

Добрый день. Обновился из исходников, взятых с git clone гитхаба с 2.1.10 до 2.1.13. При запуске возникает ошибка:

2013-08-30 13:12:27.439 [info] <0.7.0> Application ejabberd exited with reason: {undefined_macro,''}
2013-08-30 13:18:05.329 [info] <0.7.0> Application lager started on node ejabberd@localhost
2013-08-30 13:18:05.392 [info] <0.7.0> Application sasl started on node ejabberd@localhost
2013-08-30 13:18:05.431 [info] <0.7.0> Application crypto started on node ejabberd@localhost
2013-08-30 13:18:05.451 [info] <0.7.0> Application asn1 started on node ejabberd@localhost
2013-08-30 13:18:05.452 [info] <0.7.0> Application public_key started on node ejabberd@localhost
2013-08-30 13:18:05.470 [info] <0.7.0> Application ssl started on node ejabberd@localhost
2013-08-30 13:18:05.475 [info] <0.7.0> Application p1_yaml started on node ejabberd@localhost
2013-08-30 13:18:05.488 [info] <0.7.0> Application p1_tls started on node ejabberd@localhost
2013-08-30 13:18:05.501 [info] <0.7.0> Application p1_xml started on node ejabberd@localhost
2013-08-30 13:18:05.507 [info] <0.7.0> Application p1_stringprep started on node ejabberd@localhost
2013-08-30 13:18:05.511 [info] <0.7.0> Application p1_zlib started on node ejabberd@localhost
2013-08-30 13:18:05.515 [info] <0.7.0> Application p1_cache_tab started on node ejabberd@localhost
2013-08-30 13:18:05.785 [info] <0.7.0> Application mnesia started on node ejabberd@localhost
2013-08-30 13:18:07.157 [error] <0.36.0> CRASH REPORT Process <0.36.0> with 0 neighbours exited with reason: {undefined_macro,''} in application_master:init/4 line 133
2013-08-30 13:18:07.157 [info] <0.7.0> Application ejabberd exited with reason: {undefined_macro,''}

куда копать?

 ,

mkondratev
()

RSS подписка на новые темы