Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

service Kuthunyelwe ikuvumela ukuthi ugade ukude iziphazamisi kuzinhlelo zokusebenza ezibhalwe kuzo i-JavaScript.

Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

Izama ukulungisa izinkinga kuzinhlelo zokusebenza ezisekupheleni i-JavaScript kungaba ubuqili ngoba zisuka esipheqululini somsebenzisi, ovamise ukungakwazi ukufinyelela kuso. Nokho, Kuthunyelwe yenza kube nokwenzeka ukuqapha izimbungulu ukude.

kuyinto Ungalanda izixazululo okuxoxwe ngazo kulesi sihloko.

Yini edingekayo

Uma ufuna ukusebenzisa lezi zibonelo, uzodinga:

  • I-Node.js: Ithuluzi lokuthuthukisa elinothile elingeyona ingxenye yohlelo lokusebenza. Silande inguqulo yakamuva ye-LTS (8.12.0)
  • Kuthunyelwe: Kungaba i-Akhawunti kusevisi ye-Sentry (ungaqopha izimbungulu ezifika ezinkulungwaneni eziyi-10 ngenyanga mahhala) noma i-Sentry yendawo efakiwe - https://github.com/getsentry/onpremise

Ukufakwa kuseva yakho

Ukufaka i-Sentry On-Premise kuseva yakho ungahamba ngezindlela ezi-2

  1. Yakha i-rpm futhi uyifake - https://habr.com/ru/post/500632/

  2. Sebenzisa isifaki esisemthethweni:

    Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π° сСрвСр docker ΠΈ docker-compose
    git clone https://github.com/getsentry/onpremise.git
    ./install.sh

Ukusetshenziswa Okujwayelekile

Ukuze uqalise, engeza entsha kusuka kuwebhusayithi yesevisi Kuthunyelwe-iphrojekthi yesicelo. Ngemva kokukhetha ulimi olufunayo, uzothola imibhalo ehambisanayo. Esimeni sethu sakhetha i-JavaScript.

Isibonelo sokuqala sisezingeni i-JavaScript. Kunezinkinobho ezimbili lapha: "Sawubona" (Sawubona) kanye "Iphutha" (Iphutha).

Ngemva kokuchofoza inkinobho "Sawubona", isikrini sizoqala kabusha futhi vimba zama izobona futhi ibambe isiphazamisi. Ngemuva kokuthi isiphazamisi "sibanjwe", umbiko wephutha uthunyelwa mathupha kusevisi Kuthunyelwe.

Inkinobho ethi "Iphutha" ikuvumela ukuthi uthole isiphazamisi kalula.

vanilla/index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Vanilla</title>
</head>
<body>
  <button id="hello">Hello</button>
  <button id="error">Error</button>
  <div id="output"></div>
  <script src="https://browser.sentry-cdn.com/4.0.5/bundle.min.js" crossorigin="anonymous"></script>
  <script>
    (function () {
      'use strict';
      Sentry.init({ dsn: 'https://[email protected]/1289664' });
      var helloEl = document.getElementById('hello');
      var errorEl = document.getElementById('error');
      var outputEl = document.getElementById('output');
      helloEl.addEventListener('click', handleHelloClick);
      errorEl.addEventListener('click', handleErrorClick);
      function handleHelloClick() {
        outputEl.innerHTML = 'Hello World';
        try {
          throw new Error('Caught');
        } catch (err) {
          Sentry.captureException(err);
        }
      }
      function handleErrorClick() {
        throw new Error('Uncaught');
      }
    })();
  </script>
</body>
</html>

Amanothi:

  • I-Sentry ifakwe isuka ku-CDN futhi ivezwe njengokuguquguquka komhlaba wonke
  • Ngaphambidlana sethule i-Sentry kuJavaScript yethu

Ukuhlola lesi sibonelo, singasebenzisa inkundla yeseva yewebhu emile I-Node.js: iseva ye-http. Iya kufolda lapho ifayela ligcinwe khona index.html, bese ufaka (inketho ngokukhubaza ukulondoloza isikhashana) umugqa olandelayo ukuze uvule ikheli esipheqululini http://localhost:8080.

Ziboniswa kanjani izimbungulu

Okokuqala chofoza inkinobho "Sawubona".

Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

Sibambe isiphazamisi, ngakho-ke ngeke sivele isitaki sezingcingo, ngakho-ke asigadwa kukhonsoli. Nokho, njengoba sithumela ku Kuthunyelwe bika isiphazamisi mathupha, sizobona umlayezo ngaso ku-akhawunti yakho.

Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

Amanothi:

  • Singakwazi ukulandelela ukuthi yimuphi umugqa (24) oqukethe iphutha
  • Ngaphezu kwalokho, umzila we-breadcrumb ubonisa izenzo zesiphequluli eziholele ephutheni.

Indlela izimbungulu ezingabanjwanga eziboniswa ngayo

Chofoza inkinobho "Iphutha".

Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

Isiphazamisi sibhamuza isitaki sekholi futhi ngaleyo ndlela umyalezo wephutha uvele kukhonsoli. Ngemva kwalokhu, i-Sentry igada iphutha ngokuzenzakalelayo, ngaphandle kwezenzo ezengeziwe.

Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

Amanothi:

  • Siyabona ukuthi i-bug ilahlekile kumuphi umugqa (30).
  • Awukho umkhondo we-breadcrumb (angiqondi kahle ukuthi kungani)

Indlela yokuqinisekisa ukuphepha kwephrojekthi

Kungenzeka ukuthi uyibonile indlela esilawula ngayo ukuthi imaphi amakhasi angabika amaphutha kuphrojekthi yethu Kuthunyelwe; ngosizo dsn amarekhodi. Inkinga ukuthi okokufaka kungabonwa yinoma ubani obuka ikhodi yomthombo yekhasi lakho.

Ukuze sigweme lokhu, sidinga ukukhawulela inani lezizinda ezingathumela imibiko yamaphutha kuphrojekthi yethu. Kulesi sibonelo sisebenzise localhost (umsingathi wendawo). Le nketho imisiwe kuthebhu yezilungiselelo Kuthunyelwe-iphrojekthi, Isethingi Yephrojekthi Ye-Sentry.

Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

Ukukhishwa

Uma ucabanga ukuthi ungayisebenzisa kanjani Kuthunyelwe ezinhlobonhlobo ezahlukene zohlelo lwethu lokusebenza, bese sidinga uhlobo oluthile lwendlela ezomaka amaphutha ngenombolo yenguqulo.

Phela, asifuni ukuthi iphutha esililungisile liphinde livele, futhi sicabanga ukuthi esikulungisile akusebenzanga. Kungenzeka futhi ukuthi umsebenzisi uqalise inguqulo endala, efakwe kunqolobane yohlelo lokusebenza.

Ukuze uxazulule inkinga, udinga ukufaka isihlonzi ukukhululwa (izinguqulo) ekuqaleni Kuthunyelwe.

vanilla/index.html

...
var RELEASE = '0.1.0';
Sentry.init({
  dsn: 'https://[email protected]/1289664',
  release: RELEASE,
});
...

Ngemva kwalokhu, wonke amaphutha amasha azomakwa njenga ukukhishwa (0.1.0), okungukuthi, zizoboshelwa enguqulweni efanele yekhodi.

Amaphutha Okwengamela Ngokuthumela Izicelo Eziku-Front-End Ezibhalwe Nge-JavaScript: Ingxenye 1

Amanothi:

  • Sithole indlela elula yokusebenzisa ukukhishwa
  • I-Sentry ikuvumela ukuthi usebenzise okuningi inkimbinkimbi wabo usebenzisa, ehlobene eduze ne GitHub. Lo msebenzi wenza kube nokwenzeka ukulandelela iziphazamisi ngaphambi kokwenza imisebenzi ethile.

PS Ingxenye yesibili yinde, ngakho izoba kokuthunyelwe okuhlukile.

I-PS Telegraph chat Sentry https://t.me/sentry_ru

PS Ngikhohliwe ukukhombisa ukuthi lokhu ukuhunyushwa kokuthunyelwe https://codeburst.io/sentry-error-reporting-by-example-part-1-999b2df11556

Source: www.habr.com

Engeza amazwana