graylog allows you to centralize and aggregate all your log files for 100% visibility. Use their powerful query language to search through terabytes of log data to discover and analyze important information.
Perfect match, when you are maintaining multiple servers and what a team to have real-time access to collected data.
„virtPHP is a tool for creating and managing multiple isolated PHP environments on a single machine. It’s like Python’s virtualenv, but for PHP.
virtPHP creates isolated environments so that you may run any number of PHP development projects, all using different versions of PEAR packages and different PECL extensions. You may even specify a different version of PHP, if your system has various installations of PHP.“
Structure opened its doors a couple of days ago.
Structure offers a simple and powerful IoT cloud platform for developing the next generation of connected experiences. They offer device management with robust data visualization that reacts in real-time.
They have a nice drag & drop workflow interface that allows you to forward data coming in, combine data or just store it.
I will be testing a builder kit with the platform, that includes the Adafruit Feather Huzzah, which offers native Wifi connectivity. My Raspberry Pi’s will also find their way into the system. The platform allows to consume REST Apis as well, that will make it even more fun to build something unique.
If you are interested in IoT, you should really check it out. Its free :)
Structure / Adafruit Feather Huzzah
Now that Parse is phasing out (01/2017), people are looking for alternatives that offer:
Collaborative list of Parse alternative backend service providers @ GitHub
Flarum is new elegant next-generation forum software. It provides a touch optimized two pane layout with floating composer.
The backend runs on PHP/MySQL.
„OpenLog is a lightweight front end Javascript plugin (< 1kb gzipped!) that sends your user’s console errors & warnings in real time to a dynamic dashboard built with Node.“
You can not have enough tools to track errors and warnings during development. OpenLog is a nice clean dashboard to keep an overview of things being logged.
It will automatically track console.log, console.info, console.warn and console.error.
You can also use its build in methods.
Javascript Error tracking is becoming more and more important, with applications moving to the client. Many service providers already offer a variety of extensive error tracking solutions for a price. These providers help to get around browser limitations and get the most out of errors.
Depending on your budget, that might not always be an option and not always needed.
To the rescue comes ErrorBoard, that provides a basic interface to track window.onerror events. Requires Node.js, NPM and a free port.
Here the window.onerror, how I set it up for now:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
// checks if there was a previously defined window.onerror and preserve it var oldOnError = window.onerror; window.onerror = function( message, url, line, column, error ) { if (errorMsg.indexOf('Script error.') > -1) { return false; } try { var e = encodeURIComponent; var meta = '{"project":"portalzine.de"}'; ( new Image() ).src = 'http://UrltoErrorBoard/error?message=' + e( message ) + '&url=' + e( url ) + '&line=' + e( line ) + '&meta=' + e( meta ) + ( error && error.stack ? '&stack=' + e( error.stack ) : '' ) + ( column ? '&column=' + e( column ) : '' ) ; } catch(e) { // we don't want errors to throw inside onerror } // Call any previously assigned handler if (typeof oldOnError === 'function') { oldOnError.apply(this, arguments); } // returning false triggers the execution of the built-in error handler return false; }; |
1 2 3 4 5 6 7 8 9 10 11 |
SetEnvIf Request_URI ^/error/ noauth=1 AuthType Basic AuthName "Nothing here for you!" AuthUserFile /yourpathto/.htpasswd Order Deny,Allow Satisfy any Deny from all Require valid-user Allow from env=noauth |
This will request no authentication, if the Request URI has /error/ in it.
1 2 3 4 5 6 |
add_action('init', 'pluginStartSession', 1); function pluginStartSession() { if(!session_id()) { session_start(); } } |
1 2 3 4 5 6 |
add_action('wp_logout', 'pluginEndSession'); add_action('wp_login', 'pluginEndSession'); function pluginEndSession() { session_destroy (); } |
Now go ahead and use $_SESSION freely in your plugin. Here a nice additional class to encrypt session data.
HyperDB is a plugin for spreading your websites load across several servers and databases. Its currently used in production on WordPress.com.
Just started experimenting with it :)