pharos data send script for web. Support UMD, AMD, CommonJS in Browser.
npm install lightkeeper --save-dev
You can use with script
tag easily like:
<script
src="https://unpkg.com/lightkeeper/dist/pharos.min.js"
data-siteid="1"
data-host="//pharos.eming.li"
></script>
<script type="text/javascript">
window.addEventListener('load', function() {
pharos.monitor();
});
</script>
We also support commonjs require in webpack or rollup like:
const Pharos = require('lightkeeper');
const site_id = 1;
const host = 'https://pharos.eming.li';
const pharos = new Pharos(site_id, host);
pharos.monitor();
Send performance to server, return Promise.
Allow develops add customized performance data. And the val must be a Number, otherwise, it will failed. And return true if added successfully.
pharos.add('render', 300);
pharos.add({
render: 300,
footer: 58
});
Remove one or more keys from the performance data. And return true if deleted successfully.
pharos.delete('render');
pharos.delete('loadPage', 'ttfb', 'lookupDomain');
Remote all keys from the performance data. And return old data if clear successfully.
const old = pharos.clear();
console.log(old);
//{loadPage: 0, ttfb: 0, lookupDomain: 0}
Return the value of the specified parameter from the performance data.
pharos.add('footer', 100);
pharos.search('footer');
//100
Work with pharos.timeEnd. To get a duration in milliseconds. pharos.time starts the time.
pharos.time('fib_time');
fib(20);
pharos.timeEnd('fib_time');
//fib_time: 0.007080078125ms
pharos.search('fib_time');
//0.007080078125
pharos.timeEnd stops the timer and return the duration.
pharos.time('fib_time');
fib(20);
pharos.timeEnd('fib_time');
//fib_time: 0.007080078125ms
pharos.search('fib_time');
//0.007080078125
Contributions welecome!