NEWS
Puppeteer: Screenshots PhantomJS Alternative
-
Ich muß mich noch mal melden.
Ab und zu passiert es immer noch, daß Images nicht korrekt erzeugt werden.
Sind vielleicht manchmal die Flot Ladezeiten zu lang?
Was kann man noch versuchen?
Hier im Beispiel ist eine von vier Graphiken nicht in Ordnung. Und das passiert auch wirklich sehr selten, vielleicht alle paar Tage mal, wo ich mir am Tag zu jeder Stunde emails mit Graphiken generiere.
Ärgerlich ist es trotzdem.
ich hab jetzt mal renderTime: 500 eingefügt, mal schauen, ob's hilft
-
@jensen mache das mit größerer wait time - hatte nie ein thema damit
-
@liv-in-sky
ok, danke, ist einen versuch Wert -
ich hätte da ein Problem
direkt frisch installiert
iobroker läuft in VM auf proxmox
-
@arteck Bitte in Zukunft in Code Tags oder irgendeiner Form in der ich die Meldung direkt kopieren kann.
Läuft iob in Docker?
-
@foxriver76 so kannst du doch mehr lesen...
host.iobroker 2022-12-22 08:33:52.410 error instance system.adapter.puppeteer.0 terminated with code 6 (UNCAUGHT_EXCEPTION) puppeteer.0 2022-12-22 08:33:51.872 warn Terminated (UNCAUGHT_EXCEPTION): Without reason puppeteer.0 2022-12-22 08:33:51.868 error Failed to launch the browser process![1222/083351.630700:FATAL:zygote_host_impl_linux.cc(117)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x55ae0b29fb89 base::debug::CollectStackTrace()#1 0x55ae0b204433 base::debug::StackTrace::StackTrace()#2 0x55ae0b217330 logging::LogMessage::~LogMessage()#3 0x55ae091fc99b content::ZygoteHostImpl::Init()#4 0x55ae0adad372 content::ContentMainRunnerImpl::Initialize()#5 0x55ae0adab439 content::RunContentProcess()#6 0x55ae0adab58e content::ContentMain()#7 0x55ae0ae06d7a headless::(anonymous namespace)::RunContentMain()#8 0x55ae0ae06a85 headless::HeadlessShellMain()#9 0x55ae0786a3e8 ChromeMain#10 0x7f49e348409b __libc_start_main#11 0x55ae0786a22a _startTROUBLESHOOTING: https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md puppeteer.0 2022-12-22 08:33:51.868 error Error: Failed to launch the browser process![1222/083351.630700:FATAL:zygote_host_impl_linux.cc(117)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x55ae0b29fb89 base::debug::CollectStackTrace()#1 0x55ae0b204433 base::debug::StackTrace::StackTrace()#2 0x55ae0b217330 logging::LogMessage::~LogMessage()#3 0x55ae091fc99b content::ZygoteHostImpl::Init()#4 0x55ae0adad372 content::ContentMainRunnerImpl::Initialize()#5 0x55ae0adab439 content::RunContentProcess()#6 0x55ae0adab58e content::ContentMain()#7 0x55ae0ae06d7a headless::(anonymous namespace)::RunContentMain()#8 0x55ae0ae06a85 headless::HeadlessShellMain()#9 0x55ae0786a3e8 ChromeMain#10 0x7f49e348409b __libc_start_main#11 0x55ae0786a22a _startTROUBLESHOOTING: https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md at onClose (/opt/iobroker/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js:241:20) at Interface.<anonymous> (/opt/iobroker/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js:231:68) at Interface.emit (node:events:525:35) at Interface.close (node:readline:590:8) at Socket.onend (node:readline:280:10) at Socket.emit (node:events:525:35) at endReadableNT (node:internal/streams/readable:1358:12) at processTicksAndRejections (node:internal/process/task_queues:83:21) puppeteer.0 2022-12-22 08:33:51.867 error unhandled promise rejection: Failed to launch the browser process![1222/083351.630700:FATAL:zygote_host_impl_linux.cc(117)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.#0 0x55ae0b29fb89 base::debug::CollectStackTrace()#1 0x55ae0b204433 base::debug::StackTrace::StackTrace()#2 0x55ae0b217330 logging::LogMessage::~LogMessage()#3 0x55ae091fc99b content::ZygoteHostImpl::Init()#4 0x55ae0adad372 content::ContentMainRunnerImpl::Initialize()#5 0x55ae0adab439 content::RunContentProcess()#6 0x55ae0adab58e content::ContentMain()#7 0x55ae0ae06d7a headless::(anonymous namespace)::RunContentMain()#8 0x55ae0ae06a85 headless::HeadlessShellMain()#9 0x55ae0786a3e8 ChromeMain#10 0x7f49e348409b __libc_start_main#11 0x55ae0786a22a _startTROUBLESHOOTING: https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md puppeteer.0 2022-12-22 08:33:51.865 error Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). host.iobroker 2022-12-22 08:33:50.856 info instance system.adapter.puppeteer.0 started with pid 11315
debian VM in Proxmox
-
@arteck sagte in Puppeteer: Screenshots PhantomJS Alternative:
https://chromium.googlesource.com/chromium/src/+/main/docs/linux/suid_sandbox_development.md
Welche Version von Debian?
-
@foxriver76 buster also 10
-
@arteck Okay, dann habe ich erst mal keine Idee, wie ich das allgemein fixen kann.
Du könntest für dich speziell, diese Lösung probieren und rückmelden ob das tut: https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md#recommended-enable-user-namespace-cloning
-
@foxriver76 ich geh mal auf bullseye mal schauen dann..
-
@arteck sagte in Puppeteer: Screenshots PhantomJS Alternative:
bullseye
damit läufts bei mir , siehe https://forum.iobroker.net/post/812880
-
mit bullseye läuft der ...
-
@arteck sagte in Puppeteer: Screenshots PhantomJS Alternative:
mit bullseye läuft der ...
Und deswegen predige ich ja auch immer nicht an abgekündigten Versionen festzuhalten und die Kisten auf Stand zu halten. Bringt nix sich da mit obsoletem Kram zu beschäftigen.
-
@thomas-braun dir auch schöne Feiertage
-
@foxriver76 so weiter gehts
puppeteer.0 2022-12-22 11:08:33.619 debug Write file to "wetterstation.png" puppeteer.0 2022-12-22 11:08:32.470 debug Message: {"command":"screenshot","message":{"url":"https://www.yr.no/en/forecast/graph/2-2860410/Germany/North%20Rhine-Westphalia/D%C3%BCsseldorf%20District/Oberhausen","clip":{"x":0,"y":0,"width":1000,"height":757},"ioBrokerOptions":{"storagePath":"wetterstation.png"},"viewportOptions":{"width":1600,"height":1000}},"from":"system.adapter.javascript.2","callback":{"message":{"url":"https://www.yr.no/en/forecast/graph/2-2860410/Germany/North%20Rhine-Westphalia/D%C3%BCsseldorf%20District/Oberhausen","clip":{"x":0,"y":0,"width":1000,"height":757},"ioBrokerOptions":{"storagePath":"wetterstation.png"},"viewportOptions":{"width":1600,"height":1000}},"id":1,"ack":false,"time":1671703712468},"_id":69097945} javascript.2 2022-12-22 11:14:19.409 info script.js.80_system.wetter: Sucessfully took screenshot: �PNG IHDR��T��sRGB��� IDATx���wTW�g�� MT�bD��bCE콠1�X�+ػb7{7�`�b�(��^������0�� ����w�Gv��̝;wedB"""""""�S��1@'""""""� Љ�������t"""""""-��������H0@'""""""�Љ�������t"""""""-��������H0@'""""""�Љ�������t"""""""-��������H0@'""""""�Љ�������t"""""""-��������H0@'""""""�Љ�������t"""""""-��������H0@'""""""�Љ�������t"""""""-��������H0@'""""""�Љ��.........
sieht eigentlich gut aus..ich hab das binary gekürzt..
aber kein file und die datenpunkte sind auch nicht gefüllt
sendTo('puppeteer.0', 'screenshot', { url: 'https://www.yr.no/en/forecast/graph/2-2860410/Germany/North%20Rhine-Westphalia/D%C3%BCsseldorf%20District/Oberhausen', clip: { x: 0, y: 0, width: 1000, height: 757 }, ioBrokerOptions: { storagePath: 'wetterstation.png', }, viewportOptions: { width: 1600, height: 1000 } }, obj => { if (obj.error) { log(`Error taking screenshot: ${obj.error.message}`, 'error'); } else { // the binary representation of the image is contained in `obj.result` log(`Sucessfully took screenshot: ${obj.result}`); } });
so rufe ich es auf ..sollte also in /opt/iobroker/iobroker-data/files/0_userdata.0 landen..ist aber nix da
-
@arteck Siehe:
https://github.com/foxriver76/ioBroker.puppeteer#how-to
States dienen nur der Konfiguration, falls du via States (sprich das setzen der
url
) einen Screenshot erstellen möchtest. Wenn du ausschließlich Messages nutzt können dir die States egal sein.Nutzt du eine Redis DB für die Objekte?
-
@foxriver76 jo Redis
ich wollte mir nur ein Bild des meteogramms machen und in die Vis pressen
-
@arteck Wenn Objekte in Redis, dann werden Dateien nicht raw auf dem FS abgespeichert, unabhängig vom Adapter. Du solltest diese z. B. im Admin in Dateien unter Benutzerdaten finden.
-
@foxriver76 recht hast du ja
da wo man es hinschiebt ist es auch
-
@foxriver76 Falls du es auf dem FS haben möchtest, kannst du die Option
path
auf Top Level mitgeben. Ist dann Puppeteer intern abgehandelt: https://pptr.dev/api/puppeteer.screenshotoptions.path