ProHoster > Блог > Administrado > Monitorado de Eraroj kun Sentry en Front-End-Aplikoj Skribitaj en JavaScript: Parto 1
Monitorado de Eraroj kun Sentry en Front-End-Aplikoj Skribitaj en JavaScript: Parto 1
servo Gardisto permesas al vi malproksime monitori cimojn en antaŭfinaj aplikaĵoj skribitaj enen JavaScript.
Provante ripari problemojn en antaŭfinaj aplikoj JavaScript povas esti malfacilaj ĉar ili originas en la retumilo de la uzanto, al kiu vi ofte ne havas aliron. Tamen, Gardisto ebligas malproksime monitori cimojn.
estas Vi povas elŝuti la solvojn diskutitajn en ĉi tiu artikolo.
Kio necesas
Se vi volas uzi ĉi tiujn ekzemplojn, vi bezonos:
node.js: Karakterriĉa evoluilo, kiu ne estas parto de la aplikaĵo. Ni elŝutis la lastan LTS-version (8.12.0)
Gardisto: Aŭ Konto en la servo Sentry (vi povas registri ĝis 10 mil cimojn monate senpage) aŭ instalita loka Sentry - https://github.com/getsentry/onpremise
Instalado sur via servilo
Por instali Sentry On-Premise sur via servilo vi povas iri laŭ 2 manieroj
Установить на сервер docker и docker-compose
git clone https://github.com/getsentry/onpremise.git
./install.sh
Norma Uzo
Por komenci, aldonu novan el la servo retejo Gardisto-projekto por la aplikaĵo. Elektinte la deziratan lingvon, vi ricevos la respondan dokumentadon. En nia kazo ni elektis JavaScript.
La unua ekzemplo estas norma JavaScript. Estas du butonoj ĉi tie: "Saluton" (Saluton) kaj "Eraro" (Eraro).
Post kiam vi klakas la butonon "Saluton", la ekrano rekomencos kaj la bloko provu detektos kaj kaptos la cimon. Post kiam la cimo estas "kaptita", la erara raporto estas mane sendita al la servo Gardisto.
La butono "Eraro" permesas vin facile detekti cimon.
Gardostaranto estas instalita de CDN kaj elmontrita kiel tutmonda variablo
Iom pli frue ni lanĉis Sentry en nia JavaScript
Por testi ĉi tiun ekzemplon, ni povas uzi statikan retservilan platformon node.js: http servilo. Iru al la dosierujo kie la dosiero estas konservita index.html, kaj enigu (opcio kun malŝaltas kaŝmemoron) la sekvan linion por malfermi la adreson en la retumilo http://localhost:8080.
Kiel kaptitaj cimoj estas montrataj
Unue alklaku la butonon "Saluton".
Ni kaptis cimon, do ĝi ne aperos la voka stako, kaj tial ne estas monitorita en la konzolo. Tamen, ĉar ni sendas al Gardisto raportu cimon permane, ni vidos mesaĝon pri ĝi en via konto.
Notoj:
Ni povas spuri kiu linio (24) enhavas la cimon
Krome, la panorando montras la agojn de la retumilo, kiuj kaŭzis la eraron.
Kiel nekaptitaj cimoj montriĝas
Alklaku la butonon "Eraro".
La cimo bobeligas la vokon kaj tiel erarmesaĝo estas montrata sur la konzolo. Post tio, Sentry aŭtomate kontrolas la cimon, sen aldonaj agoj.
Notoj:
Ni povas vidi en kiu linio (30) la cimo estas perdita
Ne estas panetovojo (mi ne tute komprenas kial)
Kiel certigi projektan sekurecon
Vi eble rimarkis, kiel ni kontrolas, kiuj paĝoj povas raporti erarojn al nia projekto Gardisto; kun helpo dsn rekordoj. La problemo estas, ke la enigo povas esti vidita de ĉiu, kiu rigardas la fontkodon de via paĝo.
Por eviti ĉi tion, ni devas limigi la nombron da domajnoj kiuj povas sendi erarajn raportojn al nia projekto. En ĉi tiu ekzemplo ni uzis localhost (loka gastiganto). Ĉi tiu opcio estas agordita en la langeto de agordoj Gardisto-projekto, Agordo de Projekto Gardostaranto.
Eldonoj
Se vi pensas pri kiel uzi Gardisto en malsamaj variaĵoj de nia aplikaĵo, tiam ni bezonas ian mekanismon, kiu markos erarojn per versio-numero.
Post ĉio, ni ne volas, ke la cimo, kiun ni riparis, aperu denove, kaj ni pensas, ke tio, kion ni riparis, ne funkciis. Povas ankaŭ esti ke la uzanto lanĉis pli malnovan, kaŝmemorigitan version de la aplikaĵo.
Por solvi la problemon, vi devas enigi la identigilon liberigo (versioj) ĉe ekfunkciigo Gardisto.
Post ĉi tio, ĉiuj novaj eraroj estos markitaj kiel eldono (0.1.0), tio estas, ili estos ligitaj al la ĝusta versio de la kodo.
Notoj:
Ni eltrovis simplan manieron uzi eldonojn
Sentry permesas uzi pli kompleksa ilia la uzo de, kiu estas proksime rilata al GitHub. Ĉi tiu funkcio ebligas spuri cimojn antaŭ ol plenumi iujn operaciojn.
PS La dua parto estas pli longa, do ĝi estos en aparta afiŝo.