MiSchroe / ioBroker.klf200

Adapter for ioBroker to connect to a KLF200 interface and run scenes and products.
MIT License
17 stars 14 forks source link

warn message about restart will reset #104

Closed DcFamas closed 1 year ago

DcFamas commented 1 year ago

Unfornately I'm not able to reopen the request, so here I need to reopen it: https://github.com/MiSchroe/ioBroker.klf200/issues/100

Please note my answer:

Hey @MiSchroe that is the main problem. When I change the Log level it will changed every night, only for this adapter.

#######

Hey there, I'm using a script which messages me via. Signal, when something is wrong with ioBroker. The script checks the log entries. Everyday the adapter creates this log entry: klf200.0 | 2022-11-03 03:00:02.245 | warn | Restart initiated -- | -- | -- | --

When I change the log level of the instance, it will get resettet after a day. How is it possible to either change the log level or the log entry itself?

Thank you and best regards :)

MiSchroe commented 1 year ago

I can't reproduce your issue.

Steps I have tried:

  1. Enable automatic reboot in the adapter settings to reboot every minute with the following cron pattern: /1 *.
  2. Waiting for the reboot happening. The warning message Restart initiated appears. Log messages of type Info and Warn are logged.
  3. Go to the Instances tab, switch on the expert mode (the head icon), expand the row klf200.0, click on the pencil next to the log level setting, change it to warn and don't check the checkbox "Without restart".
  4. The next messages logged are only Warn messages.
  5. Change the log level again to error.
  6. Wait a few minutes. Reboot will happen but no further messages had been logged.

See my log below:

image

BTW: You could change your script to ignore this specific warning.

DcFamas commented 1 year ago

Hey there, thank you for your quick response. The main problem is not, that the setting isn't working. The problem is, that the log level will reset after a certain time. Does the adapter maybe reset the log level?

Best regards

MiSchroe commented 1 year ago

@DcFamas , the log level won't reset in my installation and the adapter doesn't do changes to the log level. The log level is controlled completely by the host (js-controller). Do you have some kind of script or adapter that sets the log level? It can be found at the state "system.adapter.klf200.0.logLevel".

Try setting up a script to log for changes: (Blockly)

<xml xmlns="https://developers.google.com/blockly/xml">
  <block type="on" id="r@TWx@rgctBYNJ`+e5V2" x="63" y="88">
    <field name="OID">system.adapter.klf200.0.logLevel</field>
    <field name="CONDITION">ne</field>
    <field name="ACK_CONDITION"></field>
    <statement name="STATEMENT">
      <block type="debug" id="CW]c9p)[9IU_B^Pg+5IU">
        <field name="Severity">log</field>
        <value name="TEXT">
          <shadow type="text" id="xt`WUaK=rQ?#qXE|XuaY">
            <field name="TEXT">test</field>
          </shadow>
          <block type="text_join" id="A!jbqQ8C!2oKto/cgqcC">
            <mutation items="9"></mutation>
            <value name="ADD0">
              <block type="text" id="@rC]VvW!bIZ]m)ufiC7+">
                <field name="TEXT">State </field>
              </block>
            </value>
            <value name="ADD1">
              <block type="on_source" id="M6`I,8TRH9k/czQmnY48">
                <field name="ATTR">id</field>
              </block>
            </value>
            <value name="ADD2">
              <block type="text" id="g/YzPAlGV8hCuff*J]*U">
                <field name="TEXT"> was changed by </field>
              </block>
            </value>
            <value name="ADD3">
              <block type="on_source" id="9O,}TzHam]B`:;#MdBy6">
                <field name="ATTR">state.from</field>
              </block>
            </value>
            <value name="ADD4">
              <block type="text" id="iER_3rqa~Vfgtdb;^|nN">
                <field name="TEXT"> from value </field>
              </block>
            </value>
            <value name="ADD5">
              <block type="on_source" id="g/Shf-d)(G-9^Zpul*6a">
                <field name="ATTR">oldState.val</field>
              </block>
            </value>
            <value name="ADD6">
              <block type="text" id="(zb~Qa^--{`HNr;E;q{f">
                <field name="TEXT"> to value </field>
              </block>
            </value>
            <value name="ADD7">
              <block type="on_source" id="NZ!8|`[JJY-fLdF82c9l">
                <field name="ATTR">state.val</field>
              </block>
            </value>
            <value name="ADD8">
              <block type="text" id="s?YuBthvC.JC7c~1[`Jm">
                <field name="TEXT">.</field>
              </block>
            </value>
          </block>
        </value>
      </block>
    </statement>
  </block>
</xml>
DcFamas commented 1 year ago

Hey there, today at night, the log level was resettet:

`

klf200.0 2022-11-11 03:00:02.250 warn Restart initiated

`

I'm pretty sure, that I don't have a script/blockly which is changing the adapter, because I don't have any script changig the system settings which are only available in developer mode. Could it be possible that the log level got resettet, because the klf200 is restarting every night? When you don't have any idea, I can deal with it to make an exception. Still this is a littble bit confusing for me. But still; thank you for your quick answers and the support!

MiSchroe commented 1 year ago

I have tried it out with resetting the klf adapter every minute and the log level stays the same for me. Eventually you have to install a newer version of the js-controller. I have tested it with the latest version of js-controller:

image