SlideShare a Scribd company logo
Show & tell – what’s going on?
Do you know what your web server is doing?
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
• Do you know what it’s being asked to do?
• Do you know how long it takes to do it?
• Do you know how each plugin affects your server performance?
oik-bwtrace – debug trace
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
WordPress Plugin: https://wordpress.org/plugins/oik-bwtrace/
GitHub repo: https://github.com/bobbingwide/oik-bwtrace
Documentation: https://www.oik-plugins.com/oik-plugins/oik-bwtrace-debug-trace-for-wordpress/
Daily trace summary
Trace file
What else might be useful?
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
RIGHT NOW
• Where we are in the code
• How many times we’ve been here
• How many errors we’ve seen
• Current time
• Elapsed time
• Current filter
• Number of hooks performed
• Number of queries performed
• Current post ID
• Memory usage
• Number of files loaded
• Number of errors detected
• Parameters passed to function
• Any saved output
• Debug backtrace callstack
PREVIOUSLY
• Request and parameters
• Globals: $_REQUEST, $_GET, $_POST
• Request type
• What to look out for
• Tracing level
AT SHUTDOWN
• What happened: actions and
filters invoked, files loaded,
saved queries, output buffer,
summary status report
sb-chart-block
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
WordPress Plugin: https://wordpress.org/plugins/sb-chart-block - submitted yesterday - awaiting review
GitHub repo: https://github.com/bobbingwide/sb-chart-block
Documentation: https://www.oik-plugins.com/oik-plugins/sb-chart-block/
Slog: Reports
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
WordPress Plugin:
GitHub repo: https://github.com/bobbingwide/slog
Documentation: https://www.oik-plugins.com/oik-plugins/slog
Post process
daily trace
reports
• Reports
• Compare
• Download
• Filter
• Driver
• Settings
Slog: Driver
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
Slog: Compare
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
https://herbmiller.me/slog-bloat/ - for the interactive version
https://top-10-wp-plugins.com/ - for latest Top 10 by total downloads and other charts
Left good < - - - - - - - - - - - - - - - - - - - - - - - - - - - - > Right bad
Slog: Today’s results
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
Left good < - - - - - - - - - - - - - - - - - - - - - - - - - - - - > Right bad
For reference
© Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
WordPress Plugin: https://wordpress.org/plugins
GitHub repo: https://github.com/bobbingwide
Documentation: https://www.oik-plugins.com/oik-plugins
https://www.wp-pompey.org.uk/wp-content/uploads/2020/05/oik-bwtrace-lightning-talk-20-May-2020-v0.0.0.pdf
https://www.youtube.com/watch?v=4zApqLtPNUk
Oik-bwtrace Sb-chart-block Slog

More Related Content

PPTX
Github for Serious Business Professional
PPTX
Git basics, Team Workflows (Ciro Miranda)
PDF
Agile android
PDF
一次项目的探险旅程
PPTX
Continous integration and delivery for single page applications
PDF
A Tale of 3 CLIs - Angular 2, Ember, and React
PDF
Introducing GitLab (June 2018)
PDF
Becoming a Git Master - Nicola Paolucci
Github for Serious Business Professional
Git basics, Team Workflows (Ciro Miranda)
Agile android
一次项目的探险旅程
Continous integration and delivery for single page applications
A Tale of 3 CLIs - Angular 2, Ember, and React
Introducing GitLab (June 2018)
Becoming a Git Master - Nicola Paolucci

What's hot (20)

PDF
Git Ready! Workflows
PDF
Gradle Show and Tell
PPT
Flex and .NET Integration
PDF
WordCamp SF 2014 - WIRED Migration Project
PPTX
Monitoring Gengo using Saas
PPTX
Git 101
PPTX
Git branching strategies
PDF
Continuous delivery with open source tools
PPT
Git workflows
PDF
Git workflow in agile development
PDF
5分で作る開発環境
PDF
GitLab webcast - Release 8.4
ODP
Testing Grails Applications With Selenium Rc
PDF
Contributing to Impala
PPTX
GitLab 8.5 Highlights and Step-by-step tutorial
PDF
Where is CEO?
PDF
Introducing GitLab
ZIP
Git censored.key
PDF
Make Your Team Flow
PPTX
Bringing Pull Request to Gerrit
Git Ready! Workflows
Gradle Show and Tell
Flex and .NET Integration
WordCamp SF 2014 - WIRED Migration Project
Monitoring Gengo using Saas
Git 101
Git branching strategies
Continuous delivery with open source tools
Git workflows
Git workflow in agile development
5分で作る開発環境
GitLab webcast - Release 8.4
Testing Grails Applications With Selenium Rc
Contributing to Impala
GitLab 8.5 Highlights and Step-by-step tutorial
Where is CEO?
Introducing GitLab
Git censored.key
Make Your Team Flow
Bringing Pull Request to Gerrit
Ad

More from Herb Miller (20)

PPTX
My favourite block v0.0.1
PPTX
WordPress block editor v0.0.0
PDF
Site Health Check for WordPress
PPTX
WordPress Portsmouth Meetup 20 February 2019 v0.0.1
PPTX
WordPress Portsmouth Meetup 20 March 2019 v0.0.1
PPTX
Yoast SEO Workshop - WordPress Portsmouth Meetup 16 Jan 2019
PPTX
WordPress Portsmouth meetup 20 dec 2018 v0.0.2
PDF
WordPress Portsmouth Meetup - 15 Nov 2018
PDF
Switching from Canvas to Storefront
PDF
WordUp Pompey - September 2018
PDF
WordUp Pompey - July 2018
PDF
WordUp Pompey - June 2018
PDF
WordUp Pompey - May 2018
PDF
WordUp Pompey - April 2018
PDF
WordUp Pompey- March 2018
PDF
WordUp Pompey - 22nd Feb 2018 - Gutenberg
PDF
WordUp Pompey reboot! - 18th Jan 2018
PDF
Responsive web design: WordUp Pompey! Feb-2012
PDF
Shortcodes: WordUp Pompey! Feb-2012
PDF
WordPress is not just a blog
My favourite block v0.0.1
WordPress block editor v0.0.0
Site Health Check for WordPress
WordPress Portsmouth Meetup 20 February 2019 v0.0.1
WordPress Portsmouth Meetup 20 March 2019 v0.0.1
Yoast SEO Workshop - WordPress Portsmouth Meetup 16 Jan 2019
WordPress Portsmouth meetup 20 dec 2018 v0.0.2
WordPress Portsmouth Meetup - 15 Nov 2018
Switching from Canvas to Storefront
WordUp Pompey - September 2018
WordUp Pompey - July 2018
WordUp Pompey - June 2018
WordUp Pompey - May 2018
WordUp Pompey - April 2018
WordUp Pompey- March 2018
WordUp Pompey - 22nd Feb 2018 - Gutenberg
WordUp Pompey reboot! - 18th Jan 2018
Responsive web design: WordUp Pompey! Feb-2012
Shortcodes: WordUp Pompey! Feb-2012
WordPress is not just a blog
Ad

Recently uploaded (20)

PDF
The New Creative Director: How AI Tools for Social Media Content Creation Are...
PPTX
Introduction to Information and Communication Technology
PDF
💰 𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓 💰
PPTX
Introduction about ICD -10 and ICD11 on 5.8.25.pptx
PPTX
artificial intelligence overview of it and more
PDF
RPKI Status Update, presented by Makito Lay at IDNOG 10
PDF
The Internet -By the Numbers, Sri Lanka Edition
PDF
FINAL CALL-6th International Conference on Networks & IOT (NeTIOT 2025)
PDF
An introduction to the IFRS (ISSB) Stndards.pdf
PPTX
Digital Literacy And Online Safety on internet
PPTX
Module 1 - Cyber Law and Ethics 101.pptx
PPT
isotopes_sddsadsaadasdasdasdasdsa1213.ppt
PDF
SASE Traffic Flow - ZTNA Connector-1.pdf
PDF
Introduction to the IoT system, how the IoT system works
PPTX
CHE NAA, , b,mn,mblblblbljb jb jlb ,j , ,C PPT.pptx
PPTX
innovation process that make everything different.pptx
PDF
Paper PDF World Game (s) Great Redesign.pdf
PDF
Best Practices for Testing and Debugging Shopify Third-Party API Integrations...
PDF
How to Ensure Data Integrity During Shopify Migration_ Best Practices for Sec...
PPTX
SAP Ariba Sourcing PPT for learning material
The New Creative Director: How AI Tools for Social Media Content Creation Are...
Introduction to Information and Communication Technology
💰 𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓 💰
Introduction about ICD -10 and ICD11 on 5.8.25.pptx
artificial intelligence overview of it and more
RPKI Status Update, presented by Makito Lay at IDNOG 10
The Internet -By the Numbers, Sri Lanka Edition
FINAL CALL-6th International Conference on Networks & IOT (NeTIOT 2025)
An introduction to the IFRS (ISSB) Stndards.pdf
Digital Literacy And Online Safety on internet
Module 1 - Cyber Law and Ethics 101.pptx
isotopes_sddsadsaadasdasdasdasdsa1213.ppt
SASE Traffic Flow - ZTNA Connector-1.pdf
Introduction to the IoT system, how the IoT system works
CHE NAA, , b,mn,mblblblbljb jb jlb ,j , ,C PPT.pptx
innovation process that make everything different.pptx
Paper PDF World Game (s) Great Redesign.pdf
Best Practices for Testing and Debugging Shopify Third-Party API Integrations...
How to Ensure Data Integrity During Shopify Migration_ Best Practices for Sec...
SAP Ariba Sourcing PPT for learning material

WordPress - Whats going on in the server?

  • 1. Show & tell – what’s going on? Do you know what your web server is doing? © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik • Do you know what it’s being asked to do? • Do you know how long it takes to do it? • Do you know how each plugin affects your server performance?
  • 2. oik-bwtrace – debug trace © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik WordPress Plugin: https://wordpress.org/plugins/oik-bwtrace/ GitHub repo: https://github.com/bobbingwide/oik-bwtrace Documentation: https://www.oik-plugins.com/oik-plugins/oik-bwtrace-debug-trace-for-wordpress/ Daily trace summary Trace file
  • 3. What else might be useful? © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik RIGHT NOW • Where we are in the code • How many times we’ve been here • How many errors we’ve seen • Current time • Elapsed time • Current filter • Number of hooks performed • Number of queries performed • Current post ID • Memory usage • Number of files loaded • Number of errors detected • Parameters passed to function • Any saved output • Debug backtrace callstack PREVIOUSLY • Request and parameters • Globals: $_REQUEST, $_GET, $_POST • Request type • What to look out for • Tracing level AT SHUTDOWN • What happened: actions and filters invoked, files loaded, saved queries, output buffer, summary status report
  • 4. sb-chart-block © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik WordPress Plugin: https://wordpress.org/plugins/sb-chart-block - submitted yesterday - awaiting review GitHub repo: https://github.com/bobbingwide/sb-chart-block Documentation: https://www.oik-plugins.com/oik-plugins/sb-chart-block/
  • 5. Slog: Reports © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik WordPress Plugin: GitHub repo: https://github.com/bobbingwide/slog Documentation: https://www.oik-plugins.com/oik-plugins/slog Post process daily trace reports • Reports • Compare • Download • Filter • Driver • Settings
  • 6. Slog: Driver © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik
  • 7. Slog: Compare © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik https://herbmiller.me/slog-bloat/ - for the interactive version https://top-10-wp-plugins.com/ - for latest Top 10 by total downloads and other charts Left good < - - - - - - - - - - - - - - - - - - - - - - - - - - - - > Right bad
  • 8. Slog: Today’s results © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik Left good < - - - - - - - - - - - - - - - - - - - - - - - - - - - - > Right bad
  • 9. For reference © Copyright Bobbing Wide 2021 Herb Miller @herb_miller @bobbingwide @vsgloik WordPress Plugin: https://wordpress.org/plugins GitHub repo: https://github.com/bobbingwide Documentation: https://www.oik-plugins.com/oik-plugins https://www.wp-pompey.org.uk/wp-content/uploads/2020/05/oik-bwtrace-lightning-talk-20-May-2020-v0.0.0.pdf https://www.youtube.com/watch?v=4zApqLtPNUk Oik-bwtrace Sb-chart-block Slog

Editor's Notes

  • #2: Ever since I started developing plugins for WordPress I’ve wanted to know what’s going on under the covers and how I could improve it. Here’s a chart that visualizes some results. I’ll try to explain them in later slides. There’s some clues in the questions. What’s happening, what’s happening? Moley Mole asks Musky Muskrat in Deputy Dawg ( 1962 – 1963 )
  • #3: To find out what’s going on I wrote a trace routine. It logs output to trace file. It’s not just a var_dump(). There’s an awful lot of contextual information. It’s similar to query-monitor; it traces front-end, admin, scheduled requests, AJAX requests, REST requests and command line stuff. The main difference is that it produces plain text files you can browse at your leisure. The output is NOT intermingled with the real results. Oik-bwtrace also produces a “Daily Trace Summary” report, showing each request’s relevant(?) statistics at `shutdown`.
  • #4: To understand any data echoed from a system it’s good to have context. Quite a lot of it. You never know when it’ll come in handy. In a debugger you can get this at run time. But debuggers slow the system down. So does tracing for that matter. Don’t remember to disable tracing when running performance tests.
  • #5: 5 years ago I wrote a post processing routine (Slog for Server Log) to summarise the requests in the Daily Trace Summary files grouping by elapsed time then merged the output from multiple logs and then manually produced a chart to display the results in Excel. It was a convoluted process. Recently I decided to invest some time to develop a Chart block which I could use to display the results immediately.
  • #6: Using the server side rendering for the Chart block I was then able to start to visualize the WordPress web server’s processing. The Reports tab is used to analyse a Daily Trace Summary file. Each Report shows the results of a grouping of data by selected values ( eg request type, URI, elapsed time IP address). It displays the results in a chart and table. The chart can show Count, Elapsed, Average, Percent count, Percent average, Cumulative percent count and Cumulative percent average. The table shows all columns. Requests can be automatically filtered by request type.
  • #7: Again 5 years ago, when running tests to evaluate the effect of activating a plugin or configuration option I used a batch driver to perform a variety of requests closely matching real activity. For the Driver tab I just use one URL. The more requests run the better the results. That’s assuming response times are acceptable.
  • #8: These are the results of running 100 requests to the home URL having activated each of the top 12 plugins. See my website for an interactive version of the chart. For the latest summary of top 12 plugins see https://top-10-wp-plugins.com/. In this chart we can see that Jetpack, WooCommerce and Elementor are the most resource hungry. https://cwiccer.com/wp-admin/admin.php?page=slog&tab=compare You may ask where the migration line is!
  • #9: Here’s the Blue Peter version of some tests that I ran today on cwiccer.com with Yoast SEO, JetPack, WooCommerce and combinations. Jetpack in orange was with Jetpack activated but not connected. Jetpack-site-accel is with the Acceleration toggled on. I was visiting the home URL of cwiccer.com which displays latest posts. Vanilla is Twenty Twenty with 3 plugins: oik-bwtrace, sb-chart-block and slog. You can draw your own conclusions.
  • #10: For more information about these plugins see my GitHub account: bobbingwide, or visit oik-plugins.com. Oik-bwtrace is on wordpress.org, sb-chart-block was submitted yesterday – as a single block plugin. For my lightning talk on oik-bwtrace see the slides on WP-Pompey or watch the video on YouTube. Contact me on Twitter or Slack.