Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Memory leak?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Memory leak?

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @djsirius last edited by

      @djsirius

      mir fällt nix auf - außer "buster" gehört upgedatet - sollte keine ursache für das problem sein
      und du nutzt einen user iobroker - das ist eigentlich der service account des iobrokers - weiß nicht wirklich, ob das gut ist, aber sollte auch nicht das problem sein

      @liv-in-sky sagte in Memory leak?:

      wielange läuft der rechner, bis er wieder stehen bleibt - mehrere tage oder passiert das in einem tag zur selben uhrzeit oder mehrmals am tag

      was ist damit ?

      @thomas-braun siehst du was ?

      D Thomas Braun 2 Replies Last reply Reply Quote 0
      • D
        djsirius @liv-in-sky last edited by

        @liv-in-sky Der Rechner läuft unterschiedlich lange, bzw. es ist keine Regelmäßigkeit zu erkennen. Manchmal läuft er 7 Tage und manchmal eben nur 2 Tage. 😞

        liv-in-sky 1 Reply Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky @djsirius last edited by

          @djsirius weiß du den letzten absturz zeitpunkt ? es gibt meist mehrere syslog files unter /var/log

          dort könnte man mal schauen, was zu desem zeitpunkt war

          D 1 Reply Last reply Reply Quote 0
          • Thomas Braun
            Thomas Braun Most Active @liv-in-sky last edited by

            @liv-in-sky sagte in Memory leak?:

            siehst du was ?

            Nö, alles im grünen Bereich.

            liv-in-sky 1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @Thomas Braun last edited by

              @thomas-braun ich mag dein neues script 🙂

              Thomas Braun 1 Reply Last reply Reply Quote 0
              • Thomas Braun
                Thomas Braun Most Active @liv-in-sky last edited by

                @liv-in-sky Da ist doch gar nicht so viel in 'Grün' drin?

                1 Reply Last reply Reply Quote 0
                • D
                  djsirius @liv-in-sky last edited by

                  @liv-in-sky said in Memory leak?:

                  @djsirius weiß du den letzten absturz zeitpunkt ? es gibt meist mehrere syslog files unter /var/log

                  dort könnte man mal schauen, was zu desem zeitpunkt war

                  Ich mache seit einiger Zeit regelmäßig einen reboot, weil ich mir nicht anders zu helfen wusste.

                  Thomas Braun liv-in-sky 2 Replies Last reply Reply Quote 0
                  • Thomas Braun
                    Thomas Braun Most Active @djsirius last edited by

                    @djsirius

                    Schau halt in die Logs rein.

                    1 Reply Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @djsirius last edited by

                      @djsirius sagte in Memory leak?:

                      @liv-in-sky said in Memory leak?:

                      @djsirius weiß du den letzten absturz zeitpunkt ? es gibt meist mehrere syslog files unter /var/log

                      dort könnte man mal schauen, was zu desem zeitpunkt war

                      Ich mache seit einiger Zeit regelmäßig einen reboot, weil ich mir nicht anders zu helfen wusste.

                      ich glaube, ich kann dir nicht helfen, wenn ich keine daten habe, wann genau was wo passiert - bisher kann ich keine großen themen auf deinem system sehen/erkennen
                      vielleicht fällt jmd anderes was auf

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        djsirius @liv-in-sky last edited by

                        @liv-in-sky said in Memory leak?:

                        @djsirius sagte in Memory leak?:

                        @liv-in-sky said in Memory leak?:

                        @djsirius weiß du den letzten absturz zeitpunkt ? es gibt meist mehrere syslog files unter /var/log

                        dort könnte man mal schauen, was zu desem zeitpunkt war

                        Ich mache seit einiger Zeit regelmäßig einen reboot, weil ich mir nicht anders zu helfen wusste.

                        ich glaube, ich kann dir nicht helfen, wenn ich keine daten habe, wann genau was wo passiert - bisher kann ich keine großen themen auf deinem system sehen/erkennen
                        vielleicht fällt jmd anderes was auf

                        ok, vielen Dank! 👍 👍 👍

                        OliverIO 1 Reply Last reply Reply Quote 0
                        • OliverIO
                          OliverIO @djsirius last edited by

                          @djsirius

                          Da sich das Problem über die Zeit entwickelt, kann man aus einer Sicht auf einen einzelnen Zeitpunkt keine Informationen ableiten.

                          Beobachte mal den speicherverbrauch der einzelnen Prozesse über die Zeit. Also so über 1/2 Tage immer wieder mal die Werte aufschreiben. Theoretisch könntest du das per copy Paste nach excel kopieren

                          Bei den meisten Fällen liegt es hier, wie du schon geschrieben hast an ein oder mehreren Skripten im js adapter.

                          Wenn der konkrete Prozess eingegrenzt ist, können wir hier weiter analysieren.

                          Wie hast du deine Skripte überprüft? Kennst du dich gut mit JS aus?
                          Wieviele Skripte hast du?
                          Ggfs. könnten wir hier mal drüberschauen.
                          Aber erst wenn wir es wissen das es der js Adapter ist

                          D 1 Reply Last reply Reply Quote 0
                          • Maschine20
                            Maschine20 @djsirius last edited by Maschine20

                            @djsirius Hallo,

                            sowas habe ich auch. Allerdings nur sehr sichtbar, wenn ein bestimmter Adapter startet. Dann bin ich beim RAM direkt bei 200 MB frei bis noch weniger (50 MB)
                            Bei mir ist das der Slideshow, issue ist eröffnet und mit Dutchman zusammen konnte ich es reproduzieren. Den Adapter hab ich momentan gestoppt und so läufts erst mal stabil.

                            Grüße Maschine20

                            1 Reply Last reply Reply Quote 0
                            • D
                              djsirius @OliverIO last edited by

                              @oliverio said in Memory leak?:

                              @djsirius

                              Da sich das Problem über die Zeit entwickelt, kann man aus einer Sicht auf einen einzelnen Zeitpunkt keine Informationen ableiten.

                              Beobachte mal den speicherverbrauch der einzelnen Prozesse über die Zeit. Also so über 1/2 Tage immer wieder mal die Werte aufschreiben. Theoretisch könntest du das per copy Paste nach excel kopieren

                              Bei den meisten Fällen liegt es hier, wie du schon geschrieben hast an ein oder mehreren Skripten im js adapter.

                              Wenn der konkrete Prozess eingegrenzt ist, können wir hier weiter analysieren.

                              Wie hast du deine Skripte überprüft? Kennst du dich gut mit JS aus?
                              Wieviele Skripte hast du?
                              Ggfs. könnten wir hier mal drüberschauen.
                              Aber erst wenn wir es wissen das es der js Adapter ist

                              Hi, OliverIO,

                              ich habe die Werte schon öfter mal über einen Zeitraum beobachtet. Leider finde ich hier keine Auffälligkeiten. 😞

                              Ich habe meine Skripte dahingehend überprüft, dass z.b. timeouts gestoppt werden.

                              Aktuell sieht es wieder so aus:

                              top - 07:30:15 up 3 days, 18:30,  1 user,  load average: 0,23, 0,13, 0,16
                              Tasks: 162 total,   2 running, 160 sleeping,   0 stopped,   0 zombie
                              %Cpu(s): 14,3 us,  5,8 sy,  0,0 ni, 77,9 id,  0,8 wa,  0,0 hi,  1,2 si,  0,0 st
                              MiB Mem :   7898,3 total,   2904,8 free,   2980,6 used,   2013,0 buff/cache
                              MiB Swap:   4016,0 total,   4015,5 free,      0,5 used.   4653,8 avail Mem
                              
                                PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
                              12109 iobroker  20   0 1271832 448168  38680 S  35,3   5,5 425:02.67 iobroker.js-con
                              13397 iobroker  20   0 1109648 361920  38260 S   6,3   4,5   9:54.02 io.javascript.0
                              26577 iobroker  20   0  708472 117316  35016 S   5,7   1,5  72:25.45 io.sql.0
                              12188 iobroker  20   0  903056 131708  33284 S   4,7   1,6 143:01.59 io.history.0
                              12865 iobroker  20   0  954712 109356  34144 R   2,3   1,4 105:01.75 io.info.0
                              32188 iobroker  20   0  683752  95640  38532 S   1,7   1,2   1:46.43 io.tr-064.0
                              12894 iobroker  20   0  688680  91360  33492 S   0,7   1,1  24:43.87 io.modbus.0
                                  8 root       0 -20       0      0      0 I   0,3   0,0   1:05.51 kworker/0:1H-kblockd
                              12134 iobroker  20   0 1017128 174568  39172 S   0,3   2,2   6:27.80 io.admin.0
                              15628 iobroker  20   0  937224 113328  39204 S   0,3   1,4   8:19.18 io.lg-thinq.0
                                  1 root      20   0  170872  10684   7904 S   0,0   0,1   0:07.64 systemd
                                  2 root      20   0       0      0      0 S   0,0   0,0   0:00.02 kthreadd
                                  3 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_gp
                                  4 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_par_gp
                                  6 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/0:0H-events_highpri
                                  9 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 mm_percpu_wq
                                 10 root      20   0       0      0      0 S   0,0   0,0   0:06.47 ksoftirqd/0
                                 11 root      20   0       0      0      0 I   0,0   0,0   2:28.75 rcu_sched
                                 12 root      20   0       0      0      0 I   0,0   0,0   0:00.00 rcu_bh
                                 13 root      rt   0       0      0      0 S   0,0   0,0   0:02.25 migration/0
                                 15 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/0
                                 16 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/1
                                 17 root      rt   0       0      0      0 S   0,0   0,0   0:02.27 migration/1
                                 18 root      20   0       0      0      0 S   0,0   0,0   0:05.97 ksoftirqd/1
                                 20 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/1:0H-events_highpri
                                 21 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/2
                                 22 root      rt   0       0      0      0 S   0,0   0,0   0:02.23 migration/2
                                 23 root      20   0       0      0      0 S   0,0   0,0   0:13.07 ksoftirqd/2
                                 25 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/2:0H-kblockd
                                 26 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/3
                                 27 root      rt   0       0      0      0 S   0,0   0,0   0:02.30 migration/3
                                 28 root      20   0       0      0      0 S   0,0   0,0   0:06.23 ksoftirqd/3
                                 30 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/3:0H-events_highpri
                                 31 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kdevtmpfs
                                 32 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 netns
                                 33 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kauditd
                                 35 root      20   0       0      0      0 S   0,0   0,0   0:00.14 khungtaskd
                                 36 root      20   0       0      0      0 S   0,0   0,0   0:00.00 oom_reaper
                                 37 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 writeback
                                 38 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kcompactd0
                                 39 root      25   5       0      0      0 S   0,0   0,0   0:00.00 ksmd
                                 40 root      39  19       0      0      0 S   0,0   0,0   0:03.11 khugepaged
                                 41 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 crypto
                                 42 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kintegrityd
                                 43 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kblockd
                                 44 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 edac-poller
                                 45 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 devfreq_wq
                                 46 root      rt   0       0      0      0 S   0,0   0,0   0:00.00 watchdogd
                                 49 root      20   0       0      0      0 S   0,0   0,0   0:00.02 kswapd0
                                 67 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kthrotld
                                 68 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 ipv6_addrconf
                                 78 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kstrp
                                 81 root       0 -20       0      0      0 I   0,0   0,0   0:05.12 kworker/3:1H-kblockd
                                123 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 acpi_thermal_pm
                                125 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 ata_sff
                                126 root      20   0       0      0      0 S   0,0   0,0   0:00.01 scsi_eh_0
                                127 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 scsi_tmf_0
                                128 root      20   0       0      0      0 S   0,0   0,0   0:00.01 scsi_eh_1
                                129 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 scsi_tmf_1
                                130 root       0 -20       0      0      0 I   0,0   0,0   0:07.80 kworker/1:1H-kblockd
                                132 root      20   0       0      0      0 S   0,0   0,0   0:00.00 scsi_eh_2
                                133 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 scsi_tmf_2
                                134 root      20   0       0      0      0 S   0,0   0,0   0:00.01 scsi_eh_3
                                135 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 scsi_tmf_3
                              

                              Mittlerweiler lasse ich den Befehl

                              echo 3 > /proc/sys/vm/drop_caches alle 12 Stunden ausführen.

                              danach sieht es so aus:

                              iobroker@debian:~$ top
                              top - 07:56:50 up 3 days, 18:57,  1 user,  load average: 0,42, 0,24, 0,19
                              Tasks: 163 total,   1 running, 162 sleeping,   0 stopped,   0 zombie
                              %Cpu(s):  4,3 us,  2,3 sy,  0,0 ni, 93,3 id,  0,1 wa,  0,0 hi,  0,1 si,  0,0 st
                              MiB Mem :   7898,3 total,   4537,2 free,   2994,0 used,    367,0 buff/cache
                              MiB Swap:   4016,0 total,   4015,5 free,      0,5 used.   4659,5 avail Mem
                              
                                PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
                              12109 iobroker  20   0 1287348 481384  38680 S   8,3   6,0 427:07.54 iobroker.js-con
                              12865 iobroker  20   0  954200 109076  34144 S   2,7   1,3 105:33.97 io.info.0
                              13397 iobroker  20   0 1115956 364036  38260 S   2,3   4,5  10:30.15 io.javascript.0
                              12188 iobroker  20   0  917292 141812  33284 S   2,0   1,8 143:37.69 io.history.0
                              26577 iobroker  20   0  705432 113108  35016 S   2,0   1,4  72:51.53 io.sql.0
                              14442 iobroker  20   0  671404  92212  33184 S   1,0   1,1  27:13.59 io.ping.0
                              12384 iobroker  20   0  955680  96536  40144 S   0,7   1,2   7:09.14 io.mihome-vacuu
                                234 root      20   0  396428 165640 159144 S   0,3   2,0   2:45.03 systemd-journal
                              11900 iobroker  20   0  947400  94256  39244 S   0,3   1,2   0:11.06 io.telegram.0
                              12263 iobroker  20   0  954044  95852  34152 S   0,3   1,2   4:06.19 io.alexa2.0
                              12369 iobroker  20   0  897692 106032  34352 S   0,3   1,3  10:05.06 io.meross.0
                              12894 iobroker  20   0  688680  90904  33492 S   0,3   1,1  24:51.33 io.modbus.0
                              15389 iobroker  20   0 1033712 182308  33772 S   0,3   2,3   3:58.56 io.web.0
                              32188 iobroker  20   0  684520  95616  38532 S   0,3   1,2   1:55.97 io.tr-064.0
                                  1 root      20   0  170872  10684   7904 S   0,0   0,1   0:07.67 systemd
                                  2 root      20   0       0      0      0 S   0,0   0,0   0:00.02 kthreadd
                                  3 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_gp
                                  4 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_par_gp
                                  6 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/0:0H-events_highpri
                                  8 root       0 -20       0      0      0 I   0,0   0,0   1:05.91 kworker/0:1H-kblockd
                                  9 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 mm_percpu_wq
                                 10 root      20   0       0      0      0 S   0,0   0,0   0:06.50 ksoftirqd/0
                                 11 root      20   0       0      0      0 I   0,0   0,0   2:29.47 rcu_sched
                                 12 root      20   0       0      0      0 I   0,0   0,0   0:00.00 rcu_bh
                                 13 root      rt   0       0      0      0 S   0,0   0,0   0:02.26 migration/0
                                 15 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/0
                                 16 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/1
                                 17 root      rt   0       0      0      0 S   0,0   0,0   0:02.28 migration/1
                                 18 root      20   0       0      0      0 S   0,0   0,0   0:05.99 ksoftirqd/1
                                 20 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/1:0H-events_highpri
                                 21 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/2
                                 22 root      rt   0       0      0      0 S   0,0   0,0   0:02.24 migration/2
                                 23 root      20   0       0      0      0 S   0,0   0,0   0:13.13 ksoftirqd/2
                                 25 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/2:0H-kblockd
                                 26 root      20   0       0      0      0 S   0,0   0,0   0:00.00 cpuhp/3
                                 27 root      rt   0       0      0      0 S   0,0   0,0   0:02.31 migration/3
                                 28 root      20   0       0      0      0 S   0,0   0,0   0:06.26 ksoftirqd/3
                                 30 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/3:0H-events_highpri
                                 31 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kdevtmpfs
                                 32 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 netns
                                 33 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kauditd
                                 35 root      20   0       0      0      0 S   0,0   0,0   0:00.14 khungtaskd
                                 36 root      20   0       0      0      0 S   0,0   0,0   0:00.00 oom_reaper
                                 37 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 writeback
                                 38 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kcompactd0
                                 39 root      25   5       0      0      0 S   0,0   0,0   0:00.00 ksmd
                                 40 root      39  19       0      0      0 S   0,0   0,0   0:03.11 khugepaged
                                 41 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 crypto
                                 42 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kintegrityd
                                 43 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kblockd
                                 44 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 edac-poller
                                 45 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 devfreq_wq
                                 46 root      rt   0       0      0      0 S   0,0   0,0   0:00.00 watchdogd
                                 49 root      20   0       0      0      0 S   0,0   0,0   0:00.02 kswapd0
                                 67 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kthrotld
                                 68 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 ipv6_addrconf
                                 78 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kstrp
                                 81 root       0 -20       0      0      0 I   0,0   0,0   0:05.16 kworker/3:1H-kblockd
                                123 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 acpi_thermal_pm
                                125 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 ata_sff
                                126 root      20   0       0      0      0 S   0,0   0,0   0:00.01 scsi_eh_0
                                127 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 scsi_tmf_0
                                128 root      20   0       0      0      0 S   0,0   0,0   0:00.01 scsi_eh_1
                                129 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 scsi_tmf_1
                              
                              
                              OliverIO 1 Reply Last reply Reply Quote 0
                              • OliverIO
                                OliverIO @djsirius last edited by

                                @djsirius

                                wenn dir keine Veränderungen auffallen, dann ist dein system evtl dauerhaft am limit? Ansonsten müsstest du bei mem ja schon veränderungen sehen über die Zeit.

                                jetzt machen wir es so du aktivierst bitte die datenpunkt historie (zahnrad ganz rechts vom jeweiligen datenpunkt) für die beiden folgenden Datenpunkte:

                                system.host.<name deines ioborokers>.memHeapUsed
                                system.adapter.javascript.0.memHeapTotal

                                um diese datenpunkte zu sehen musst du die expertenansicht aktivieren
                                einfach nur aktivieren und speichern. nix an den einstellungen ändern.
                                zur Aktivierung der Historie muss der History-Adapter installiert sein.

                                das lässt du einfach mal solange laufen bis denkst das der arbeitsspeicher voll gelaufen ist. am besten ohne diesen befehl /proc/sys/vm/drop_caches
                                der verschleiert ja nur die symptome, ändert aber nix am auslöser

                                danach zeigst du uns die diagrammr der datenpunktänderungen.
                                dazu einfach wieder auf das zahnrad und falls nicht schon automatisch ausgewählt oben den diagramm reiter auswählen

                                D 1 Reply Last reply Reply Quote 0
                                • D
                                  djsirius @OliverIO last edited by

                                  ok, hab ich eingestellt!

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate
                                  FAQ Cloud / IOT
                                  HowTo: Node.js-Update
                                  HowTo: Backup/Restore
                                  Downloads
                                  BLOG

                                  438
                                  Online

                                  31.9k
                                  Users

                                  80.2k
                                  Topics

                                  1.3m
                                  Posts

                                  5
                                  26
                                  1368
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo