All Projects → andersonba → puppeteer-assets

andersonba / puppeteer-assets

Licence: MIT license
Measuring and monitor assets metrics using Puppeteer and Prometheus

Programming Languages

javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects
shell
77523 projects

Projects that are alternatives of or similar to puppeteer-assets

whatsapp-tracking
Scraping the status of WhatsApp contacts
Stars: ✭ 49 (+68.97%)
Mutual labels:  grafana, puppeteer
leumi-leumicard-bank-data-scraper
Open bank data for Leumi bank and Leumi card credit card
Stars: ✭ 28 (-3.45%)
Mutual labels:  puppeteer
jest-puppe-shots
A Jest plugin for creating screenshots of React components with a little help of Puppeteer
Stars: ✭ 86 (+196.55%)
Mutual labels:  puppeteer
gimlet-stack
Bootstrap curated Kubernetes stacks. Logging, metrics, ingress and more - delivered with gitops.
Stars: ✭ 12 (-58.62%)
Mutual labels:  grafana
jest-puppeteer-istanbul
Collect code coverage information from end-to-end jest puppeteer tests
Stars: ✭ 26 (-10.34%)
Mutual labels:  puppeteer
sarjitsu
dockerized setup for visualizing System Activity Report (SAR) data.
Stars: ✭ 20 (-31.03%)
Mutual labels:  grafana
assetic
Asset Management for PHP
Stars: ✭ 61 (+110.34%)
Mutual labels:  assets
cryptowelder
(deprecated) Cryptocurrency trade monitoring/visualization tool with time-series data.
Stars: ✭ 29 (+0%)
Mutual labels:  grafana
grafana-redistimeseries
This project is deprecated in favor of https://github.com/RedisTimeSeries/grafana-redis-datasource
Stars: ✭ 19 (-34.48%)
Mutual labels:  grafana
solar-logger
A datalogger for a solar inverter. Stores data in influxdb and displays it in grafana. Has load diverting capability, to use the inverter's excess power
Stars: ✭ 53 (+82.76%)
Mutual labels:  grafana
policy-reporter
Monitoring and Observability Tool for the PolicyReport CRD with an optional UI.
Stars: ✭ 140 (+382.76%)
Mutual labels:  grafana
yesoreyeram-boomsummary-panel
Boom Summary Panel for Grafana
Stars: ✭ 14 (-51.72%)
Mutual labels:  grafana
personal-puppeteer
A personal web page screenshotting service. Basically, it exposes an API that I can use to generate screenshot of any URL.
Stars: ✭ 19 (-34.48%)
Mutual labels:  puppeteer
throughout
🎪 End-to-end testing made simple (using Jest and Puppeteer)
Stars: ✭ 16 (-44.83%)
Mutual labels:  puppeteer
bamboo-prometheus-exporter
Prometheus Exporter For Bamboo
Stars: ✭ 18 (-37.93%)
Mutual labels:  grafana
Prometheus
App Metrics Extensions for Prometheus reporting
Stars: ✭ 36 (+24.14%)
Mutual labels:  grafana
Social-Media-Automation
Automate social media because you don't have to be active on all of them😉. Best way to be active on all social media without actually being active on them. 😃
Stars: ✭ 186 (+541.38%)
Mutual labels:  puppeteer
docker-case
这个项目主要是为了快速拉起docker服务
Stars: ✭ 31 (+6.9%)
Mutual labels:  grafana
unity-visual-novel-toolkit
WIP: Create a Visual Novel with no programming
Stars: ✭ 34 (+17.24%)
Mutual labels:  assets
robusta
Open source Kubernetes monitoring, troubleshooting, and automation platform
Stars: ✭ 772 (+2562.07%)
Mutual labels:  grafana

Puppeteer Assets npm version Build Status

Measuring your assets with metrics using Puppeteer.

Want to know which scripts are loaded in your page? This module allows you to extract and audit the metrics.

Gif CLI

Install

yarn add puppeteer-assets

Usage

Using CLI

puppeteer-assets www.google.com

Advanced usage:

puppeteer-assets www.google.com -t javascript -t css --ignore gooogle-analytics

Run puppeteer-assets --help to more options.

Using on Node.js

import assetsMetrics from 'puppeteer-assets';

await assetsMetrics('https://www.andersonba.com');
{
  assets: {
    'https://www.andersonba.com/scripts/main.js': {
      mimeType: 'javascript',
      rawMimeType: 'application/javascript',
      type: 'internal',
      gzip: 1621,
      size: 1621
    },
    'https://www.andersonba.com/scripts/vendor.js': {
      mimeType: 'javascript',
      rawMimeType: 'application/javascript',
      type: 'internal',
      gzip: 213438,
      size: 213438
    },
    'https://www.google-analytics.com/analytics.js': {
      mimeType: 'javascript',
      rawMimeType: 'text/javascript',
      type: 'external',
      gzip: 0,
      size: 44470
    }
  },
  count: {
    internal: { total: 2, javascript: 2 },
    external: { total: 1, javascript: 1 },
    total: 3
  },
  size: {
    internal: { total: 215059, javascript: 215059 },
    external: { total: 44470, javascript: 44470 },
    total: 259529
  },
  gzip: {
    internal: { total: 215059, javascript: 215059 },
    external: { total: 0, javascript: 0 },
    total: 215059
  }
}

Prometheus

Explore and monitor your assets metrics using Prometheus and Grafana.

Grafana

You need to configure a webservice to be the Prometheus target.

You can use the official built-in server.

Reference API

assetsMetrics(url, options)

Parameter Description Type Default
url Required. Page URL string
options.mimeTypes MimeTypes to be filtered in the metrics. You can use mapped mimeTypes from options.mimeTypePatterns Array<RegExp | string> ['javascript']
options.mimeTypePatterns Map the mimeTypes based on regex patterns Array<RegExp | string> { javascript: ['javascript'], css: ['css'] }
options.ignorePatterns Ignore assets based on regex patterns Array<RegExp | string> []
options.internalPatterns Mark asset as internal type based on regex patterns Array<RegExp | string> [/^(\/|.\/)/]
options.cookies Define cookies on the browser using the standard cookie format. Fields name and value are required in the string. Example: name=current_user; value=123456; domain=andersonba.com; path=/. Array<string> []
options.userAgent Define the userAgent to the browser string
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].