Just released a free Magento extension designed to prevent admin users from sharing credentials (which wrecks accountability when things go wrong). It prevents an admin account from having more than one active session at a time. If a second user logs in using the same username and password, the first user gets redirected to the login screen with a nice message explaining they’ve been kicked because another user logged in with the same credentials.
It’s just a beta release, not thoroughly tested across different Mage versions (developed on CE 18.104.22.168), but the extension is simple enough it should work fine in most cases. Obviously, as with everything, test before pushing to production.
Thanks go to Jared (http://molotovbliss.com/) for adding modman support 🙂
UPDATE: awesomely enough, this feature is baked-in to Magento 2 🙂
I needed a reliable way to test a script I wrote to monitor server load. Luckily I found it in bash’s
On most versions of Linux, you can install it with
yum install stress
apt-get install stress
depending on your distro.
I was on Centos 7.2, which of course doesn’t have the package in a repo (including EPEL), so I downloaded it from here
yum localinstall stress-1.0.2-1.el7.rf.x86_64.rpm
Usage is straightforward, all I needed to do was generate 90 seconds of greater than 70% CPU usage on a one CPU cloud virt, so I did
stress --cpu 2 --timeout 90
Don’t feel like shelling out $$$ for NewRelic or Blackfire.io? Got a micro instance hosting a blog that nobody reads that doesn’t have the memory to support enterprise monitoring anyway (*cough* this blog *cough*)?
Here’s a shell script that will email you when server load gets above whatever threshold you specify. Would be pretty easy to adapt to monitor memory using the ‘
free‘ command as well. Just schedule it using ‘
crontab -e‘, like ‘
*/5 * * * * /path/to/script.sh‘ for every 5 minutes, and you’re set.
Server load monitoring on a budget!
# requires bc library - yum install bc
# alert threshold, as decimal
ALERT=.7; # 70% CPU utilization
# admin email
# add /usr/bin to path so cron works
# get number of processors
# get first utilization metric
UTIL=`cat /proc/loadavg | cat -d ' ' -f 1`;
# divide util by number of processors, accounting for 0.00 util
RESULT=`bc <<< "scale = 2; $UTIL / $NPROC"`;
# email alert if util is greater than alert threshold
if [[ `bc <<< "$RESULT > $ALERT"` -eq 1 ]]
# calculate a percentage
PERC=`bc <<< "scale = 2; $RESULT * 100"`;
echo "CPU utilization is above threshold at $PERC %";
# add top output to email
TOPOUTPUT=`top -n 1 -b`;
`/usr/bin/mailx -s "Utilization high on $HOSTNAME" -r "$EMAIL" "$EMAIL" <<< "CPU on $HOSTNAME is at $PERC %
# echo "Utilization is only $RESULT";
You can test it by generating CPU load with the
stress utility if you like.