{"id":86853,"date":"2020-06-30T19:41:57","date_gmt":"2020-06-30T17:41:57","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/monitoring-oshibok-s-pomoshhyu-sentry-vo-frontend-prilozheniyah-napisannyh-na-javascript-chast-1"},"modified":"2020-06-30T19:41:57","modified_gmt":"2020-06-30T17:41:57","slug":"monitoring-oshibok-s-pomoshhyu-sentry-vo-frontend-prilozheniyah-napisannyh-na-javascript-chast-1","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/monitoring-oshibok-s-pomoshhyu-sentry-vo-frontend-prilozheniyah-napisannyh-na-javascript-chast-1","title":{"rendered":"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dienst <em>Sentry<\/em> erm\u00f6glicht die Fern\u00fcberwachung von Bugs in Frontend-Anwendungen, die in <em>JavaScript<\/em>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1\" src=\"\/wp-content\/uploads\/2020\/06\/26936c2af48cb0d849eca4abd21b7deb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Der Versuch, Probleme in Frontend-Anwendungen auf <em>JavaScript<\/em> kann eine schwierige Aufgabe sein, da sie im Browser des Benutzers auftreten, auf den Sie oft keinen Zugriff haben. Dennoch <em>Sentry<\/em> bietet die M\u00f6glichkeit, Bugs fernzuwarnen.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/larkintuckerllc\/hello-sentry\">Hier<\/a><\/noindex> k\u00f6nnen die L\u00f6sungen heruntergeladen werden, die in diesem Artikel behandelt wurden.<\/p>\n<p><\/p>\n<p><strong>Was ben\u00f6tigt wird<\/strong><\/p>\n<p><\/p>\n<p>Wenn Sie diese Beispiele nutzen m\u00f6chten, ben\u00f6tigen Sie:<\/p>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/en\/\"><em>Node.js<\/em><\/a><\/noindex>: Ein vielseitiges Entwicklungstool, das nicht Teil der Anwendung ist. Wir haben die neueste LTS-Version (8.12.0) heruntergeladen.<\/li>\n<li><em>Sentry<\/em>: Entweder ein Konto im Sentry-Service (man kann kostenlos bis zu 10.000 Bugs pro Monat melden) oder ein installiertes lokales Sentry - <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/getsentry\/onpremise\">https:\/\/github.com\/getsentry\/onpremise<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<p><strong>Installation auf Ihrem Server<\/strong><\/p>\n<p><\/p>\n<p>Um Sentry On-Premise auf Ihren Server zu installieren, k\u00f6nnen Sie zwei Wege gehen<\/p>\n<p><\/p>\n<ol>\n<li>\n<p>rpm paketieren und installieren - <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/500632\/\">https:\/\/habr.com\/ru\/post\/500632\/<\/a><\/noindex><\/p>\n<p>\n<\/li>\n<li>\n<p>Den offiziellen Installer verwenden:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">Docker und docker-compose auf dem Server installieren\ngit clone https:\/\/github.com\/getsentry\/onpremise.git\n.\/install.sh<\/code><\/pre>\n<p>\n<\/li>\n<\/ol>\n<p><\/p>\n<p><strong>Standardnutzung<\/strong><\/p>\n<p><\/p>\n<p>Um zu beginnen, f\u00fcgen Sie ein neues <em>Sentry<\/em>-Projekt f\u00fcr die Anwendung von der Website des Dienstes hinzu. Nach Auswahl der gew\u00fcnschten Sprache erhalten Sie die entsprechende Dokumentation. In unserem Fall haben wir <em>JavaScript<\/em>.<\/p>\n<p><\/p>\n<p>Das erste Beispiel ist standardm\u00e4\u00dfig <em>JavaScript<\/em>. Hier gibt es zwei Schaltfl\u00e4chen: <em>\u201eHallo\u201c<\/em> (Hallo) und <em>\u201eFehler\u201c<\/em> (Fehler).<\/p>\n<p><\/p>\n<p>Nachdem Sie auf die Schaltfl\u00e4che geklickt haben <em>\u201eHallo\u201c<\/em>, wird der Bildschirm neu geladen und der Block <em>try<\/em> wird den Bug erkennen und erfassen. Nachdem der Bug \u201eerfasst\u201c wurde, wird der Fehlerbericht manuell an den Dienst gesendet <em>Sentry<\/em>.<\/p>\n<p><\/p>\n<p>Die Schaltfl\u00e4che \u201eFehler\u201c erm\u00f6glicht es einfach, den Bug zu erkennen.<\/p>\n<p><\/p>\n<p><em>vanilla \/ index.html<\/em><\/p>\n<p><\/p>\n<pre><code class=\"html\">&lt;!DOCTYPE html&gt;\n&lt;html&gt;\n&lt;head&gt;\n&lt;meta charset=&quot;UTF-8&quot;&gt;\n&lt;title&gt;Vanilla&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n  &lt;button id=&quot;hello&quot;&gt;Hallo&lt;\/button&gt;\n  &lt;button id=&quot;error&quot;&gt;Fehler&lt;\/button&gt;\n  &lt;div id=&quot;output&quot;&gt;&lt;\/div&gt;\n  &lt;script src=&quot;https:\/\/browser.sentry-cdn.com\/4.0.5\/bundle.min.js&quot; crossorigin=&quot;anonymous&quot;&gt;&lt;\/script&gt;\n  &lt;script&gt;\n    (function () {\n      &#039;use strict&#039;;\n      Sentry.init({ dsn: &#039;https:\/\/b5bf359072254626aba8e64368e77b7d@sentry.io\/1289664&#039; });\n      var helloEl = document.getElementById(&#039;hello&#039;);\n      var errorEl = document.getElementById(&#039;error&#039;);\n      var outputEl = document.getElementById(&#039;output&#039;);\n      helloEl.addEventListener(&#039;click&#039;, handleHelloClick);\n      errorEl.addEventListener(&#039;click&#039;, handleErrorClick);\n      function handleHelloClick() {\n        outputEl.innerHTML = &#039;Hello World&#039;;\n        try {\n          throw new Error(&#039;Caught&#039;);\n        } catch (err) {\n          Sentry.captureException(err);\n        }\n      }\n      function handleErrorClick() {\n        throw new Error(&#039;Uncaught&#039;);\n      }\n    })();\n  &lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<p><\/p>\n<p>Hinweise:<\/p>\n<p><\/p>\n<ul>\n<li>Sentry wird \u00fcber CDN installiert und als globale Variable angezeigt<\/li>\n<li>Vorher haben wir Sentry in unserem JavaScript gestartet.<\/li>\n<\/ul>\n<p><\/p>\n<p>Um dieses Beispiel zu testen, k\u00f6nnen wir eine statische Webserver-Plattform nutzen <em>Node.js<\/em>: <em>HTTP-Server<\/em>. Gehen Sie in das Verzeichnis, in dem sich die Datei <em>index.html<\/em>befindet, und geben Sie (Option zum Deaktivieren der Speicherung) die folgende Zeile ein, um die Adresse im Browser zu \u00f6ffnen <noindex><a rel=\"nofollow\" href=\"http:\/\/localhost:8080\/\"><em>http:\/\/localhost:8080<\/em><\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><strong>Wie erfasste Bugs angezeigt werden<\/strong><\/p>\n<p><\/p>\n<p>Zuerst klicken wir auf die Schaltfl\u00e4che <em>\u201eHallo\u201c<\/em>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1\" src=\"\/wp-content\/uploads\/2020\/06\/ce1390a129b56988a5630b65d7152b85.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Wir haben einen Bug erfasst, daher wird er nicht nach oben im Aufrufstapel erscheinen und wird nicht in der Konsole \u00fcberwacht. Da wir jedoch in <em>Sentry<\/em> den Fehlerbericht manuell senden, werden wir eine Nachricht \u00fcber denselben in unserem Konto sehen.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1\" src=\"\/wp-content\/uploads\/2020\/06\/4660395849c963cf6b6bce03cdf74013.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hinweise:<\/p>\n<p><\/p>\n<ul>\n<li>Wir k\u00f6nnen verfolgen, in welcher Zeile (24) der Bug aufgetaucht ist.<\/li>\n<li>Au\u00dferdem zeigt die Navigationskette die Aktionen des Browsers, die zu einem Fehler gef\u00fchrt haben.<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>Wie nicht gefangene Bugs angezeigt werden<\/strong><\/p>\n<p><\/p>\n<p>Wir klicken auf die Schaltfl\u00e4che <em>\u201eFehler\u201c.<\/em><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1\" src=\"\/wp-content\/uploads\/2020\/06\/d6b3e92ac9bda497d6bb5f2987bef8d9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Der Bug taucht im Call-Stack auf und somit wird die Fehlermeldung in der Konsole angezeigt. Danach \u00fcberwacht Sentry den Bug automatisch, ohne zus\u00e4tzliche Ma\u00dfnahmen.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1\" src=\"\/wp-content\/uploads\/2020\/06\/554ada29ebadba636ad7e0edb0b8a104.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hinweise:<\/p>\n<p><\/p>\n<ul>\n<li>Wir k\u00f6nnen sehen, in welcher Zeile (30) der Bug verloren gegangen ist<\/li>\n<li>Die Navigationskette ist nicht vorgesehen (ich verstehe nicht ganz, warum)<\/li>\n<\/ul>\n<p><\/p>\n<p><strong>Wie man die Sicherheit des Projekts gew\u00e4hrleistet<\/strong><\/p>\n<p><\/p>\n<p>Sie haben vielleicht bemerkt, wie wir die Seiten kontrollieren, die Berichte \u00fcber Fehler in unser Projekt senden k\u00f6nnen <em>Sentry<\/em>; mit Hilfe von <em>dsn<\/em> Eintr\u00e4gen. Das Problem ist, dass jeder, der den Quellcode Ihrer Seite einsehen kann, den Zugang sehen kann.<\/p>\n<p><\/p>\n<p>Um dies zu vermeiden, sollten wir die Anzahl der Domains beschr\u00e4nken, die Berichte \u00fcber Fehler in unser Projekt eintragen k\u00f6nnen. In diesem Beispiel haben wir <em>localhost<\/em> (localhost) verwendet. Diese Option wird im Bereich Einstellungen <em>Sentry<\/em>-Projekt, <em>Sentry-Projekteinstellungen<\/em>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1\" src=\"\/wp-content\/uploads\/2020\/06\/fc8990a261c2c3673a9b8eda6eaf1fd0.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><strong>Versionen<\/strong><\/p>\n<p><\/p>\n<p>Wenn man dar\u00fcber nachdenkt, wie man <em>Sentry<\/em> in verschiedenen Varianten unserer Anwendung verwenden kann, dann ben\u00f6tigt man einen Mechanismus, der Fehler mit einer Versionsnummer kennzeichnet.<\/p>\n<p><\/p>\n<p>Es sollte nicht so sein, dass ein von uns behobener Bug erneut auftritt, und wir denken, dass das Fix nicht funktioniert hat. Es kann auch sein, dass der Benutzer eine \u00e4ltere, zwischengespeicherte Version der Anwendung gestartet hat.<\/p>\n<p><\/p>\n<p>Um das Problem zu l\u00f6sen, muss man die ID <em>der Ver\u00f6ffentlichung<\/em> (Version) beim Start <em>Sentry<\/em>.<\/p>\n<p><\/p>\n<p><em>vanilla \/ index.html<\/em><\/p>\n<p><\/p>\n<pre><code class=\"javascript\">...\nvar RELEASE = '0.1.0';\nSentry.init({\n  dsn: 'https:\/\/b5bf359072254626aba8e64368e77b7d@sentry.io\/1289664',\n  release: RELEASE,\n});\n...<\/code><\/pre>\n<p><\/p>\n<p>Nach diesem Schritt werden alle neuen Fehler als <em>release (0.1.0)<\/em>, das hei\u00dft, sie werden der richtigen Codeversion zugeordnet.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1\" src=\"\/wp-content\/uploads\/2020\/06\/b9776d3b6f9ebe94915c53374937dddc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hinweise:<\/p>\n<p><\/p>\n<ul>\n<li>Wir haben einen einfachen Weg besprochen, um Releases zu verwenden<\/li>\n<li>Sentry erm\u00f6glicht kompliziertere <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.sentry.io\/learn\/releases\/?platform=javascript\"><em>Verfahren<\/em> , die eng miteinander verbunden sind mit <em>Nutzung<\/em><\/a><\/noindex>. Diese Funktion erm\u00f6glicht es, Bugs bis zu bestimmten Operationen zu verfolgen. <em>GitHub<\/em>P.S. Der zweite Teil ist l\u00e4nger, daher wird er in einem separaten Beitrag ver\u00f6ffentlicht.<\/li>\n<\/ul>\n<p><\/p>\n<p>P.S. Telegram-Chat Sentry<\/p>\n<p><\/p>\n<p>P.S. Ich habe vergessen zu erw\u00e4hnen, dass dies eine \u00dcbersetzung des Beitrags ist <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/sentry_ru\">https:\/\/t.me\/sentry_ru<\/a><\/noindex><\/p>\n<p><\/p>\n<p>P.S. Ich habe ganz vergessen zu erw\u00e4hnen, dass dies eine \u00dcbersetzung des Beitrags ist <noindex><a rel=\"nofollow\" href=\"https:\/\/codeburst.io\/sentry-error-reporting-by-example-part-1-999b2df11556\">https:\/\/codeburst.io\/sentry-error-reporting-by-example-part-1-999b2df11556<\/a><\/noindex><\/p>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/508686\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u0435\u0440\u0432\u0438\u0441 Sentry \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u0442\u044c \u0431\u0430\u0433\u0438 \u0432 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 JavaScript. \u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u0443\u0441\u0442\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0432 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 \u043d\u0430 JavaScript \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043d\u0435\u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u043a\u043e\u0439, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u044e\u0442 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043a \u0447\u0435\u043c\u0443, \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e, \u0443 \u0432\u0430\u0441 \u043d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0430. \u041e\u0434\u043d\u0430\u043a\u043e, Sentry \u0434\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u0442\u044c \u0431\u0430\u0433\u0438. \u0417\u0434\u0435\u0441\u044c \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435. \u0427\u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0415\u0441\u043b\u0438 \u0432\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":86854,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-86853","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u0435\u0440\u0432\u0438\u0441 Sentry \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u0442\u044c \u0431\u0430\u0433\u0438 \u0432 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 JavaScript.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/monitoring-oshibok-s-pomoshhyu-sentry-vo-frontend-prilozheniyah-napisannyh-na-javascript-chast-1\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u043e\u0448\u0438\u0431\u043e\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Sentry \u0432\u043e \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 JavaScript: \u0427\u0430\u0441\u0442\u044c 1 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u0435\u0440\u0432\u0438\u0441 Sentry \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u0442\u044c \u0431\u0430\u0433\u0438 \u0432 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 JavaScript.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/monitoring-oshibok-s-pomoshhyu-sentry-vo-frontend-prilozheniyah-napisannyh-na-javascript-chast-1\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-06-30T17:41:57+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-06-30T17:41:57+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Fehler\u00fcberwachung mit Sentry in Frontend-Anwendungen, die in JavaScript geschrieben sind: Teil 1 - ProHoster","description":"Der Sentry-Service erm\u00f6glicht die Fern\u00fcberwachung von Bugs in Frontend-Anwendungen, die in JavaScript geschrieben sind.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/monitoring-oshibok-s-pomoshhyu-sentry-vo-frontend-prilozheniyah-napisannyh-na-javascript-chast-1","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u043e\u0448\u0438\u0431\u043e\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Sentry \u0432\u043e \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 JavaScript: \u0427\u0430\u0441\u0442\u044c 1 | ProHoster","og:description":"\u0421\u0435\u0440\u0432\u0438\u0441 Sentry \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u0442\u044c \u0431\u0430\u0433\u0438 \u0432 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 JavaScript.","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/monitoring-oshibok-s-pomoshhyu-sentry-vo-frontend-prilozheniyah-napisannyh-na-javascript-chast-1","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-06-30T17:41:57+00:00","article:modified_time":"2020-06-30T17:41:57+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"86853","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 14:05:27","updated":"2022-09-30 20:48:17","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/86853","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=86853"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/86853\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/86854"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=86853"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=86853"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=86853"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}