Profiler

Плагин Profiler для OpenReplay.

Profiler

Плагин profiler позволяет измерять производительность ваших JS-функций и фиксировать как аргументы, так и результат каждого вызова.

npm i @openreplay/tracker-profiler

Инициализируйте трекер и загрузите в него плагин. Затем оберните любую функцию в вашем коде сгенерированной функцией.

Если ваш сайт — одностраничное приложение (SPA)

Section titled Если ваш сайт — одностраничное приложение (SPA)
import trackerProfiler from '@openreplay/tracker-profiler';
import { tracker } from '@openreplay/tracker';

tracker.configure({
  projectKey: 'YOUR_PROJECT_KEY',
  ingestPoint: "https://openreplay.mydomain.com/ingest", // when dealing with the self-hosted version of OpenReplay
});
const profiler = tracker.use(trackerProfiler());

tracker.start();

// ...
const fn = profiler('MyFunction')(() => {
  // Inspecting function body
}, thisArg); // thisArg is optional

Если ваше веб-приложение рендерится на стороне сервера (SSR)

Section titled Если ваше веб-приложение рендерится на стороне сервера (SSR)

Следуйте приведённому ниже примеру, если ваше приложение использует SSR. Убедитесь, что tracker.start() вызывается после запуска приложения (в useEffect или componentDidMount).

import trackerProfiler from '@openreplay/tracker-profiler/cjs';
import { tracker } from '@openreplay/tracker';

tracker.configure({
  projectKey: 'YOUR_PROJECT_KEY',
  ingestPoint: "https://openreplay.mydomain.com/ingest", // when dealing with the self-hosted version of OpenReplay
});
const profiler = tracker.use(trackerProfiler());

//...
function MyApp() {
  useEffect(() => { // use componentDidMount in case of React Class Component
    tracker.start();
  }, [])
}
//...
const fn = profiler('MyFunction')(() => {
  // Inspecting function body
}, thisArg); // thisArg is optional

Остались вопросы?

Section titled Остались вопросы?

Возникли трудности с настройкой этого плагина? Подключайтесь к нашему Slack или загляните на наш Форум и получите помощь от нашего сообщества.