<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>28038</bug_id>
          
          <creation_ts>2012-11-21 15:36:26 +0400</creation_ts>
          <short_desc>collectd: Необходимо обеспечить совместимость службы с systemd</short_desc>
          <delta_ts>2015-03-30 12:25:50 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>collectd</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.altlinux.org/Systemd_Status_P7</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>28008</blocked>
    
    <blocked>30879</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mike">amike</reporter>
          <assigned_to name="Anton Farygin">rider</assigned_to>
          <cc>anton</cc>
    
    <cc>asy</cc>
    
    <cc>at</cc>
    
    <cc>cas</cc>
    
    <cc>crux</cc>
    
    <cc>danil</cc>
    
    <cc>ender</cc>
    
    <cc>lav</cc>
    
    <cc>ldv</cc>
    
    <cc>mike</cc>
    
    <cc>qa_viy</cc>
    
    <cc>rider</cc>
    
    <cc>shaba</cc>
    
    <cc>viy</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>135128</commentid>
    <comment_count>0</comment_count>
    <who name="Mike">amike</who>
    <bug_when>2012-11-21 15:36:26 +0400</bug_when>
    <thetext>Необходимо обеспечить совместимость службы с systemd
Подготовить корректный unit-файл.

Подробности по ссылке: http://www.altlinux.org/Systemd_Status_P7</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135222</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2012-11-21 17:04:19 +0400</bug_when>
    <thetext>Или кто другой, или после EFI и прочего более важного.
systemd неинтересен.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147748</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Shabalin">shaba</who>
    <bug_when>2014-09-16 21:34:58 +0400</bug_when>
    <thetext>unit-файл collectd.service уже есть в исходниках, в contrib/
Его надо только упаковать в
%_unitdir/collectd.service

И  еще в collectd.init не соответствуют:
# config: /etc/default/collectd
# pidfile: /var/run/collectd.pid
и
PIDFILE=/var/run/collectdmon.pid
если запускать с помощью systemd, то это критично.

еще бы хорошо добавить LSB заголовок
### BEGIN INIT INFO
# Provides:                     collectd
# Required-Start:               $local_fs $network 
# Required-Stop:                $local_fs $network
# Default-Start:                3 4 5
# Default-Stop:                 0 1 2 6
# Short-Description:            Statistics daemon collectd
# Description:                  Start the statistics daemon collectd
### END INIT INFO</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147749</commentid>
    <comment_count>3</comment_count>
    <who name="viy">viy</who>
    <bug_when>2014-09-16 22:03:37 +0400</bug_when>
    <thetext>странно, почему баг на nobody?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149648</commentid>
    <comment_count>4</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2015-01-13 15:37:09 +0300</bug_when>
    <thetext>Надо обсудить: сейчас в init-скрипте запускается collectdmon, который следит (достаточно неудачно) за процессом collectd.
Предлагаю от него избавиться, и запускать сразу процесс collectd.
С задачей перезапуска справится systemd. А для скриптов systemV можно дописать правило для monit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149649</commentid>
    <comment_count>5</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2015-01-13 15:51:29 +0300</bug_when>
    <thetext>Я правильно понимаю, что unit-файл избавляет от необходимости использовать init-скрипт, и там можно сделать без collectdmon ? Если да, надо так делать, а по поводу избавления от collectdmon в sysvinit завети отдельный баг и там обсудить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149653</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2015-01-13 16:36:24 +0300</bug_when>
    <thetext>(В ответ на комментарий №5)
&gt; Я правильно понимаю, что unit-файл избавляет от необходимости использовать
&gt; init-скрипт, и там можно сделать без collectdmon ?
Там-то явно избыточно.

&gt; Если да, надо так делать, а по поводу избавления от collectdmon в sysvinit
&gt; завети отдельный баг и там обсудить.
Если не изменяет склероз, то изначально collectd я паковал без использования collectdmon и достаточно вернуться к этому.

(В ответ на комментарий №4)
&gt; А для скриптов systemV можно дописать правило для monit.
Собственно, можно его сразу и паковать, добавив зависимость на monit-base (что не приведёт к установке самого monit, но в случае установки сделает конфигурирование максимально быстрым).  Второй вариант -- добавить в примеры из комплекта monit.

Вот это точно отдельный баг (FR), над которым думаю со времён Server 4.0 и никак не решусь махнуть шашкой.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149654</commentid>
    <comment_count>7</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2015-01-13 16:41:53 +0300</bug_when>
    <thetext>не надо ещё monit тащить. Можно для systemd запаковать правильный сервис-файл, а под initscript гораздо удобнее запускать под collectdmon.

Я его втащил, т.к. столкнулся с падениями collectd и лучше без дополнительных зависимостей.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149663</commentid>
    <comment_count>8</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2015-01-13 18:43:59 +0300</bug_when>
    <thetext>(В ответ на комментарий №7)
&gt; Я его втащил, т.к. столкнулся с падениями collectd и лучше без дополнительных
&gt; зависимостей.
Спасибо, но сейчас у нас
а) collectd жутко течёт
б) не прибивается через /etc/init.d/collecd stop (порождённый процесс collectd -f не завершается)
в) когда каждая программа начинает сама следить за собой, да ещё и неумело, получается ужасный зоопарк.

Я уже понял, что сбежать получится только в systemd. Как бы ни хотелось.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149664</commentid>
    <comment_count>9</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2015-01-13 18:45:19 +0300</bug_when>
    <thetext>Виталь, а где у тебя collectd жутко течёт ?

У меня collectd из Sisyphus работает месяцами без проблем.
Может быть, для начала - обновим его, потом апстрим попинаем на предмет утечек ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149665</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2015-01-13 19:38:58 +0300</bug_when>
    <thetext>(В ответ на комментарий №8)
&gt; Я уже понял, что сбежать получится только в systemd. Как бы ни хотелось.
Ну, такой подход гарантирует только дальнейшее понижение качества софта.
Не приемлю.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149666</commentid>
    <comment_count>11</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2015-01-13 21:32:59 +0300</bug_when>
    <thetext>Для повышения качества софта надо найти исправить в нём ошибки.

Но у меня оно не воспроизводится, а у вас ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149668</commentid>
    <comment_count>12</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2015-01-14 14:39:27 +0300</bug_when>
    <thetext>(В ответ на комментарий №9)
&gt; Виталь, а где у тебя collectd жутко течёт ?
&gt; 
&gt; У меня collectd из Sisyphus работает месяцами без проблем.
&gt; Может быть, для начала - обновим его, потом апстрим попинаем на предмет утечек
Если можно обновить в p7 до Сизифного — отлично. Если надо, можно сделать task, я готов потестировать перед тем, как его примут в p7.

Путём исключения выяснили, что нужен настроенный
LoadPlugin mysql
чтобы началась утечка. Возможно, его просто никто не использует :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149669</commentid>
    <comment_count>13</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2015-01-14 15:07:21 +0300</bug_when>
    <thetext>Для серьёзных задач (где MySQL) есть Zabbix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149670</commentid>
    <comment_count>14</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2015-01-14 15:56:24 +0300</bug_when>
    <thetext>(В ответ на комментарий №12)
&gt; (В ответ на комментарий №9)
&gt; &gt; Виталь, а где у тебя collectd жутко течёт ?
&gt; &gt; 
&gt; &gt; У меня collectd из Sisyphus работает месяцами без проблем.
&gt; &gt; Может быть, для начала - обновим его, потом апстрим попинаем на предмет утечек
&gt; Если можно обновить в p7 до Сизифного — отлично. Если надо, можно сделать task,
&gt; я готов потестировать перед тем, как его примут в p7.
Сделай, пожалуйста.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149679</commentid>
    <comment_count>15</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2015-01-14 19:56:29 +0300</bug_when>
    <thetext>(В ответ на комментарий №14)
&gt; (В ответ на комментарий №12)
&gt; &gt; (В ответ на комментарий №9)
&gt; &gt; &gt; Виталь, а где у тебя collectd жутко течёт ?
...
&gt; &gt; я готов потестировать перед тем, как его примут в p7.
&gt; Сделай, пожалуйста.
Собрал под p7, проверил, течь перестало:
[#138515] p7 EPERM collectd.git=5.4.1-alt1.M70P.2.1
Думаю, аппрувить пока не надо, подождём добавления .service для systemd в сбоку для Сизифа?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149687</commentid>
    <comment_count>16</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2015-01-15 13:35:41 +0300</bug_when>
    <thetext>(В ответ на комментарий №13)
&gt; Для серьёзных задач (где MySQL) есть Zabbix.
Он умеет мониторить mysql, а не складывать в него? :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149688</commentid>
    <comment_count>17</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2015-01-15 13:36:40 +0300</bug_when>
    <thetext>https://collectd.org/wiki/index.php/Plugin:MySQL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149733</commentid>
    <comment_count>18</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2015-01-16 10:26:28 +0300</bug_when>
    <thetext>(In reply to comment #12)

&gt; Путём исключения выяснили, что нужен настроенный
&gt; LoadPlugin mysql
&gt; чтобы началась утечка.

Не только. Я смотрел 5.4.1 в прошлом году, вот тут кое-что написано:
http://lists.altlinux.org/pipermail/sysadmins/2014-June/036828.html

В итоге, я откатился на 5.2.1 после того эксперимента. Сейчас попробую обновиться из задания 138515.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149734</commentid>
    <comment_count>19</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2015-01-16 10:32:26 +0300</bug_when>
    <thetext>(In reply to comment #18)

&gt; Не только. Я смотрел 5.4.1 в прошлом году, вот тут кое-что написано:
&gt; http://lists.altlinux.org/pipermail/sysadmins/2014-June/036828.html

непосредственно про &quot;течёт&quot; в следующем месяце:
http://lists.altlinux.org/pipermail/sysadmins/2014-July/036835.html
В моей конфигурации много собирается по snmp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149795</commentid>
    <comment_count>20</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2015-01-21 08:46:42 +0300</bug_when>
    <thetext>(In reply to comment #15)

&gt; Собрал под p7, проверил, течь перестало:
&gt; [#138515] p7 EPERM collectd.git=5.4.1-alt1.M70P.2.1

Течёт:

Mon Jan 19 15:35:03 SAMT 2015:
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
19356 root      20   0 3756588 114736   5404 S 5,319 0,620   3:29.69 collectd

Tue Jan 20 09:34:59 SAMT 2015:
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
19356 root      20   0 3756880 712384   5404 S 2.992 3.851 125:34.02 collectd

Wed Jan 21 09:36:57 SAMT 2015:
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
19356 root      20   0 3756588 1.437g   5436 S 8.976 8.144 291:34.52 collectd

Используемые у меня плагины:

LoadPlugin syslog
LoadPlugin cpu
LoadPlugin interface
LoadPlugin load
LoadPlugin memory
LoadPlugin network
LoadPlugin rrdtool
LoadPlugin sensors
LoadPlugin snmp
LoadPlugin match_regex
LoadPlugin match_value
LoadPlugin match_timediff
LoadPlugin target_notification
LoadPlugin target_replace
LoadPlugin target_set

5.2.1 не течёт в таком же режиме работы.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149796</commentid>
    <comment_count>21</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2015-01-21 12:54:08 +0300</bug_when>
    <thetext>(В ответ на комментарий №20)
...
&gt; Течёт:
Я был не прав, начав обсуждать проблемы collectd в этой баге. Давайте про «течёт» заведём тогда отдельную багу, и в ней исследовать, какой именно плагин течёт...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149801</commentid>
    <comment_count>22</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2015-01-22 09:32:16 +0300</bug_when>
    <thetext>(In reply to comment #21)

&gt; Давайте про «течёт» заведём тогда отдельную багу

bug #30668</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149863</commentid>
    <comment_count>23</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2015-01-26 18:34:45 +0300</bug_when>
    <thetext>Да, Zabbix&apos;ом можно мониторить MySQL И всё что хочется.
http://wiki.enchtex.info/howto/zabbix/advanced_mysql_monitoring

Что касается утечек - Виталь, опиши плз, воспроизводится ли у тебя проблема с утечкой ?

Что касается  collectd поддержки systemd - скоро будет.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149865</commentid>
    <comment_count>24</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2015-01-26 19:09:38 +0300</bug_when>
    <thetext>(В ответ на комментарий №23)
...
&gt; Что касается утечек - Виталь, опиши плз, воспроизводится ли у тебя проблема с
&gt; утечкой ?
После обновление до сизифной 5.4.1 у меня проблема ушла.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149869</commentid>
    <comment_count>25</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2015-01-26 20:29:03 +0300</bug_when>
    <thetext>И перезапускается нормально ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149871</commentid>
    <comment_count>26</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2015-01-26 21:32:32 +0300</bug_when>
    <thetext>(В ответ на комментарий №25)
&gt; И перезапускается нормально ?
Да</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149880</commentid>
    <comment_count>27</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2015-01-27 14:59:17 +0300</bug_when>
    <thetext>collectd-5.4.1-alt3 -&gt; sisyphus:

* Mon Jan 26 2015 Anton Farygin &lt;rider@altlinux&gt; 5.4.1-alt3
- add unit file for systemd (closes: #28038)</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>