ee78449131
initMonitoring в onInit веб-части (один раз на страницу), service.name = requestPortal, токен — молча через AAD веб-части (spfxTokenProvider). В package-solution.json запрос Logs.Write к регистрации мониторинга. Хэш коммита сборки — патч webpack (config/webpack-patch.json): GIT_COMMIT, GITHUB_SHA или git. Пакет @tnsu/monitoring-web ставится отдельно. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 lines
887 B
JavaScript
21 lines
887 B
JavaScript
// Хэш коммита сборки — в логи (git.commit) и записи экрана мониторинга: @tnsu/monitoring-web читает
|
||
// __TNSU_GIT_COMMIT__, а webpack подставляет его при сборке. Хэш — GIT_COMMIT или GITHUB_SHA пайплайна, иначе git.
|
||
const { execSync } = require('node:child_process');
|
||
const webpack = require('webpack');
|
||
|
||
function gitCommit() {
|
||
const fromEnv = process.env.GIT_COMMIT || process.env.GITHUB_SHA;
|
||
if (fromEnv) return fromEnv;
|
||
try {
|
||
return execSync('git rev-parse HEAD', { stdio: ['ignore', 'pipe', 'ignore'] }).toString().trim();
|
||
} catch {
|
||
return '';
|
||
}
|
||
}
|
||
|
||
module.exports = function monitoringPatch(config) {
|
||
config.plugins = config.plugins || [];
|
||
config.plugins.push(new webpack.DefinePlugin({ __TNSU_GIT_COMMIT__: JSON.stringify(gitCommit()) }));
|
||
return config;
|
||
};
|