ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ಸೇವೆ ಸೆಂಟ್ರಿ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಬರೆಯಲಾದ ದೋಷಗಳನ್ನು ದೂರದಿಂದಲೇ ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್.

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿನ ಸಮಸ್ಯೆಗಳನ್ನು ಸರಿಪಡಿಸಲು ಪ್ರಯತ್ನಿಸಲಾಗುತ್ತಿದೆ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ನೀವು ಸಾಮಾನ್ಯವಾಗಿ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರದ ಬಳಕೆದಾರರ ಬ್ರೌಸರ್‌ನಲ್ಲಿ ಅವು ಹುಟ್ಟಿಕೊಂಡಿರುವುದರಿಂದ ಟ್ರಿಕಿ ಆಗಿರಬಹುದು. ಆದಾಗ್ಯೂ, ಸೆಂಟ್ರಿ ದೋಷಗಳನ್ನು ದೂರದಿಂದಲೇ ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಸುತ್ತದೆ.

ಇದು ಈ ಲೇಖನದಲ್ಲಿ ಚರ್ಚಿಸಲಾದ ಪರಿಹಾರಗಳನ್ನು ನೀವು ಡೌನ್‌ಲೋಡ್ ಮಾಡಬಹುದು.

ಏನು ಅಗತ್ಯ

ನೀವು ಈ ಉದಾಹರಣೆಗಳನ್ನು ಬಳಸಲು ಬಯಸಿದರೆ, ನಿಮಗೆ ಇವುಗಳು ಬೇಕಾಗುತ್ತವೆ:

  • Node.js: ಅಪ್ಲಿಕೇಶನ್‌ನ ಭಾಗವಾಗಿರದ ವೈಶಿಷ್ಟ್ಯ-ಭರಿತ ಅಭಿವೃದ್ಧಿ ಸಾಧನ. ನಾವು ಇತ್ತೀಚಿನ LTS ಆವೃತ್ತಿಯನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಿದ್ದೇವೆ (8.12.0)
  • ಸೆಂಟ್ರಿ: ಸೆಂಟ್ರಿ ಸೇವೆಯಲ್ಲಿನ ಖಾತೆ (ನೀವು ತಿಂಗಳಿಗೆ 10 ಸಾವಿರ ದೋಷಗಳನ್ನು ಉಚಿತವಾಗಿ ರೆಕಾರ್ಡ್ ಮಾಡಬಹುದು) ಅಥವಾ ಸ್ಥಾಪಿಸಲಾದ ಸ್ಥಳೀಯ ಸೆಂಟ್ರಿ - https://github.com/getsentry/onpremise

ನಿಮ್ಮ ಸರ್ವರ್‌ನಲ್ಲಿ ಸ್ಥಾಪನೆ

ನಿಮ್ಮ ಸರ್ವರ್‌ನಲ್ಲಿ ಸೆಂಟ್ರಿ ಆನ್-ಪ್ರಿಮೈಸ್ ಅನ್ನು ಸ್ಥಾಪಿಸಲು ನೀವು 2 ರೀತಿಯಲ್ಲಿ ಹೋಗಬಹುದು

  1. rpm ಅನ್ನು ನಿರ್ಮಿಸಿ ಮತ್ತು ಅವುಗಳನ್ನು ಸ್ಥಾಪಿಸಿ - https://habr.com/ru/post/500632/

  2. ಅಧಿಕೃತ ಸ್ಥಾಪಕವನ್ನು ಬಳಸಿ:

    Установить на сервер docker и docker-compose
    git clone https://github.com/getsentry/onpremise.git
    ./install.sh

ಪ್ರಮಾಣಿತ ಬಳಕೆ

ಪ್ರಾರಂಭಿಸಲು, ಸೇವಾ ವೆಬ್‌ಸೈಟ್‌ನಿಂದ ಹೊಸದನ್ನು ಸೇರಿಸಿ ಸೆಂಟ್ರಿ- ಅಪ್ಲಿಕೇಶನ್ಗಾಗಿ ಯೋಜನೆ. ಬಯಸಿದ ಭಾಷೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡಿದ ನಂತರ, ನೀವು ಅನುಗುಣವಾದ ದಸ್ತಾವೇಜನ್ನು ಸ್ವೀಕರಿಸುತ್ತೀರಿ. ನಮ್ಮ ವಿಷಯದಲ್ಲಿ ನಾವು ಆರಿಸಿದ್ದೇವೆ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್.

ಮೊದಲ ಉದಾಹರಣೆ ಪ್ರಮಾಣಿತವಾಗಿದೆ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್. ಇಲ್ಲಿ ಎರಡು ಗುಂಡಿಗಳಿವೆ: "ಹಲೋ" (ಹಲೋ) ಮತ್ತು "ದೋಷ" (ದೋಷ).

ನೀವು ಬಟನ್ ಕ್ಲಿಕ್ ಮಾಡಿದ ನಂತರ "ಹಲೋ", ಪರದೆಯು ರೀಬೂಟ್ ಆಗುತ್ತದೆ ಮತ್ತು ನಿರ್ಬಂಧಿಸುತ್ತದೆ ಪ್ರಯತ್ನಿಸಿ ದೋಷವನ್ನು ಪತ್ತೆ ಮಾಡುತ್ತದೆ ಮತ್ತು ಹಿಡಿಯುತ್ತದೆ. ದೋಷವನ್ನು "ಕ್ಯಾಚ್" ಮಾಡಿದ ನಂತರ, ದೋಷ ವರದಿಯನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಸೇವೆಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ ಸೆಂಟ್ರಿ.

ದೋಷವನ್ನು ಸುಲಭವಾಗಿ ಪತ್ತೆಹಚ್ಚಲು "ದೋಷ" ಬಟನ್ ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.

ವೆನಿಲ್ಲಾ/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>

ಪ್ರಾರ್ಥನೆ:

  • ಸೆಂಟ್ರಿಯನ್ನು CDN ನಿಂದ ಸ್ಥಾಪಿಸಲಾಗಿದೆ ಮತ್ತು ಜಾಗತಿಕ ವೇರಿಯಬಲ್ ಆಗಿ ಬಹಿರಂಗಪಡಿಸಲಾಗಿದೆ
  • ಸ್ವಲ್ಪ ಮುಂಚಿತವಾಗಿ ನಾವು ನಮ್ಮ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಸೆಂಟ್ರಿಯನ್ನು ಪ್ರಾರಂಭಿಸಿದ್ದೇವೆ

ಈ ಉದಾಹರಣೆಯನ್ನು ಪರೀಕ್ಷಿಸಲು, ನಾವು ಸ್ಥಿರ ವೆಬ್ ಸರ್ವರ್ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್ ಅನ್ನು ಬಳಸಬಹುದು Node.js: http ಸರ್ವರ್. ಫೈಲ್ ಸಂಗ್ರಹವಾಗಿರುವ ಫೋಲ್ಡರ್‌ಗೆ ಹೋಗಿ ಸೂಚ್ಯಂಕ, ಮತ್ತು ಬ್ರೌಸರ್‌ನಲ್ಲಿ ವಿಳಾಸವನ್ನು ತೆರೆಯಲು ಕೆಳಗಿನ ಸಾಲನ್ನು ನಮೂದಿಸಿ (ಕ್ಯಾಶಿಂಗ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುವ ಆಯ್ಕೆ). http://localhost:8080.

ಹಿಡಿದ ದೋಷಗಳನ್ನು ಹೇಗೆ ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ

ಮೊದಲು ಬಟನ್ ಕ್ಲಿಕ್ ಮಾಡಿ "ಹಲೋ".

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ನಾವು ದೋಷವನ್ನು ಹಿಡಿದಿದ್ದೇವೆ, ಆದ್ದರಿಂದ ಇದು ಕರೆ ಸ್ಟಾಕ್ ಅನ್ನು ಪಾಪ್ ಅಪ್ ಮಾಡುವುದಿಲ್ಲ ಮತ್ತು ಆದ್ದರಿಂದ ಕನ್ಸೋಲ್‌ನಲ್ಲಿ ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡಲಾಗುವುದಿಲ್ಲ. ಆದಾಗ್ಯೂ, ನಾವು ಕಳುಹಿಸುವುದರಿಂದ ಸೆಂಟ್ರಿ ದೋಷವನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ವರದಿ ಮಾಡಿ, ನಿಮ್ಮ ಖಾತೆಯಲ್ಲಿ ನಾವು ಅದರ ಬಗ್ಗೆ ಸಂದೇಶವನ್ನು ನೋಡುತ್ತೇವೆ.

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ಪ್ರಾರ್ಥನೆ:

  • ಯಾವ ಸಾಲಿನಲ್ಲಿ (24) ದೋಷವಿದೆ ಎಂಬುದನ್ನು ನಾವು ಪತ್ತೆಹಚ್ಚಬಹುದು
  • ಹೆಚ್ಚುವರಿಯಾಗಿ, ಬ್ರೆಡ್‌ಕ್ರಂಬ್ ಟ್ರಯಲ್ ದೋಷಕ್ಕೆ ಕಾರಣವಾದ ಬ್ರೌಸರ್ ಕ್ರಿಯೆಗಳನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ.

ಹಿಡಿಯದ ದೋಷಗಳನ್ನು ಹೇಗೆ ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ

ಬಟನ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಲಾಗುತ್ತಿದೆ "ದೋಷ".

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ದೋಷವು ಕರೆ ಸ್ಟಾಕ್ ಅನ್ನು ಬಬಲ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ಆದ್ದರಿಂದ ಕನ್ಸೋಲ್‌ನಲ್ಲಿ ದೋಷ ಸಂದೇಶವನ್ನು ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ. ಇದರ ನಂತರ, ಸೆಂಟ್ರಿಯು ಯಾವುದೇ ಹೆಚ್ಚುವರಿ ಕ್ರಿಯೆಗಳಿಲ್ಲದೆ ದೋಷವನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡುತ್ತದೆ.

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ಪ್ರಾರ್ಥನೆ:

  • ಯಾವ ಸಾಲಿನಲ್ಲಿ (30) ದೋಷವು ಕಳೆದುಹೋಗಿದೆ ಎಂಬುದನ್ನು ನಾವು ನೋಡಬಹುದು
  • ಬ್ರೆಡ್‌ಕ್ರಂಬ್ ಟ್ರಯಲ್ ಇಲ್ಲ (ಏಕೆ ಎಂದು ನನಗೆ ಅರ್ಥವಾಗುತ್ತಿಲ್ಲ)

ಯೋಜನೆಯ ಸುರಕ್ಷತೆಯನ್ನು ಹೇಗೆ ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು

ನಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್‌ಗೆ ಯಾವ ಪುಟಗಳು ದೋಷಗಳನ್ನು ವರದಿ ಮಾಡಬಹುದು ಎಂಬುದನ್ನು ನಾವು ನಿಯಂತ್ರಿಸುವ ವಿಧಾನವನ್ನು ನೀವು ಗಮನಿಸಿರಬಹುದು ಸೆಂಟ್ರಿ; ಸಹಾಯದಿಂದ ಡಿಎಸ್ಎನ್ ದಾಖಲೆಗಳು. ಸಮಸ್ಯೆಯೆಂದರೆ ನಿಮ್ಮ ಪುಟದ ಮೂಲ ಕೋಡ್ ಅನ್ನು ವೀಕ್ಷಿಸುವ ಯಾರಾದರೂ ಇನ್‌ಪುಟ್ ಅನ್ನು ನೋಡಬಹುದು.

ಇದನ್ನು ತಪ್ಪಿಸಲು, ನಮ್ಮ ಯೋಜನೆಗೆ ದೋಷ ವರದಿಗಳನ್ನು ಸಲ್ಲಿಸಬಹುದಾದ ಡೊಮೇನ್‌ಗಳ ಸಂಖ್ಯೆಯನ್ನು ನಾವು ಮಿತಿಗೊಳಿಸಬೇಕಾಗಿದೆ. ಈ ಉದಾಹರಣೆಯಲ್ಲಿ ನಾವು ಬಳಸಿದ್ದೇವೆ ಸ್ಥಳೀಯ ಹೋಸ್ಟ್ (ಸ್ಥಳೀಯ ಹೋಸ್ಟ್). ಈ ಆಯ್ಕೆಯನ್ನು ಸೆಟ್ಟಿಂಗ್‌ಗಳ ಟ್ಯಾಬ್‌ನಲ್ಲಿ ಕಾನ್ಫಿಗರ್ ಮಾಡಲಾಗಿದೆ ಸೆಂಟ್ರಿ- ಯೋಜನೆ, ಸೆಂಟ್ರಿ ಪ್ರಾಜೆಕ್ಟ್ ಸೆಟ್ಟಿಂಗ್.

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ಬಿಡುಗಡೆ ಮಾಡುತ್ತದೆ

ಹೇಗೆ ಬಳಸುವುದು ಎಂದು ನೀವು ಯೋಚಿಸಿದರೆ ಸೆಂಟ್ರಿ ನಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನ ವಿಭಿನ್ನ ಮಾರ್ಪಾಡುಗಳಲ್ಲಿ, ನಮಗೆ ಕೆಲವು ರೀತಿಯ ಯಾಂತ್ರಿಕತೆಯ ಅಗತ್ಯವಿರುತ್ತದೆ ಅದು ಆವೃತ್ತಿ ಸಂಖ್ಯೆಯೊಂದಿಗೆ ದೋಷಗಳನ್ನು ಗುರುತಿಸುತ್ತದೆ.

ಎಲ್ಲಾ ನಂತರ, ನಾವು ಸರಿಪಡಿಸಿದ ದೋಷವು ಮತ್ತೆ ಪಾಪ್ ಅಪ್ ಆಗುವುದನ್ನು ನಾವು ಬಯಸುವುದಿಲ್ಲ ಮತ್ತು ನಾವು ಸರಿಪಡಿಸಿದ್ದು ಕೆಲಸ ಮಾಡಲಿಲ್ಲ ಎಂದು ನಾವು ಭಾವಿಸುತ್ತೇವೆ. ಬಳಕೆದಾರರು ಅಪ್ಲಿಕೇಶನ್‌ನ ಹಳೆಯ, ಕ್ಯಾಶ್ ಮಾಡಿದ ಆವೃತ್ತಿಯನ್ನು ಪ್ರಾರಂಭಿಸಿರಬಹುದು.

ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲು, ನೀವು ಗುರುತಿಸುವಿಕೆಯನ್ನು ನಮೂದಿಸಬೇಕು ಬಿಡುಗಡೆ (ಆವೃತ್ತಿಗಳು) ಪ್ರಾರಂಭದಲ್ಲಿ ಸೆಂಟ್ರಿ.

ವೆನಿಲ್ಲಾ/index.html

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

ಇದರ ನಂತರ, ಎಲ್ಲಾ ಹೊಸ ದೋಷಗಳನ್ನು ಎಂದು ಗುರುತಿಸಲಾಗುತ್ತದೆ ಬಿಡುಗಡೆ (0.1.0), ಅಂದರೆ, ಅವುಗಳನ್ನು ಕೋಡ್‌ನ ಸರಿಯಾದ ಆವೃತ್ತಿಗೆ ಜೋಡಿಸಲಾಗುತ್ತದೆ.

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾದ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಸೆಂಟ್ರಿಯೊಂದಿಗೆ ಮಾನಿಟರಿಂಗ್ ದೋಷಗಳು: ಭಾಗ 1

ಪ್ರಾರ್ಥನೆ:

  • ಬಿಡುಗಡೆಗಳನ್ನು ಬಳಸಲು ನಾವು ಸರಳವಾದ ಮಾರ್ಗವನ್ನು ಕಂಡುಕೊಂಡಿದ್ದೇವೆ
  • ಸೆಂಟ್ರಿ ನೀವು ಹೆಚ್ಚು ಬಳಸಲು ಅನುಮತಿಸುತ್ತದೆ ಸಂಕೀರ್ಣ ತಮ್ಮ ಬಳಕೆ, ಇದು ನಿಕಟವಾಗಿ ಸಂಬಂಧಿಸಿದೆ GitHub. ಈ ಕಾರ್ಯವು ಕೆಲವು ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಮೊದಲು ದೋಷಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಸಾಧ್ಯವಾಗಿಸುತ್ತದೆ.

ಪಿಎಸ್ ಎರಡನೇ ಭಾಗವು ಉದ್ದವಾಗಿದೆ, ಆದ್ದರಿಂದ ಇದು ಪ್ರತ್ಯೇಕ ಪೋಸ್ಟ್ನಲ್ಲಿರುತ್ತದೆ.

ಪಿಎಸ್ ಟೆಲಿಗ್ರಾಮ್ ಚಾಟ್ ಸೆಂಟ್ರಿ https://t.me/sentry_ru

PS ಇದು ಪೋಸ್ಟ್‌ನ ಅನುವಾದ ಎಂದು ಸೂಚಿಸಲು ನಾನು ಮರೆತಿದ್ದೇನೆ https://codeburst.io/sentry-error-reporting-by-example-part-1-999b2df11556

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ