Skip to main content

Posts

Mysql show processlist of a specific user - filtering processlist

 SELECT * FROM information_schema.processlist WHERE User LIKE 'username';
Recent posts

The way I use go (golang) sql/mysql driver to create connection

I use go for web development and I have noticed I have a few problems with database connections to mysql using go-sql-driver/mysql . Database connections created and then never closed. I reached a point of 4,096 simultaneous connections and my mysql server have reached max-connections which reached a denial of service . I had to play a bit with some tweaking of the code and this is what I have reached: db.SetMaxOpenConns(200) // this works occasionally   db.SetMaxIdleConns(30) // this does not work but I keep it anyway db.SetConnMaxLifetime(time.Second * 30) // this also does not work but I keep it db.Exec("SET SESSION wait_timeout = 30") // this works db.Exec("SET SESSION interactive_timeout = 30") // and also this one Using the above directive I was able to have the number of connections under control. Please note that sometimes I still get more than 200 connections even though I set the maximum to 200, and sometimes it keeps the max 200. SetMaxIdleConns ...

Poor man's DVR - a linux bash script to capture images from the camera and upload them to a remote server

I wanted to create a very easy "DVR" script for my raspberry PI machine that will take a shot from the camera and upload the photos to a remote server so I can see what is happening in my living room. I created this simple bash Linux command line script to activate the camera, save the photo, add a timestamp and upload it to a remote server. It is running every minute - capturing 5 photos from the webcam every 9 seconds and uploads them to the server using scp. Here is the shell script for a poor man's DVR: #!/bin/bash # repeat 5 times for i in {1..5}; do     # the file name with a datetime stamp     filename=webcam_$(date +%Y%m%d-%H%M%S).jpg       # capture the image from the camera     ffmpeg -f video4linux2 -input_format mjpeg -i /dev/video0 -vframes 1 -frames:v 1 /mnt/ramdisk/$filename     # wait     sleep 9 done # create a latest.jpg image cp /mnt/ramdisk/$filename /mnt/ramdisk/latest.jpg...

Caddy webserver to prevent access from external machines on the network

How to protect your local caddy installation by preventing other machines outside of your localhost and local computer from accessing your device. Create rule: (block_outcoming) {        @denied not client_ip 127.0.0.1 ::1         handle @denied {                 respond "No access"         } }   Then inside your website configuration just add import  block_outcoming   E.g.: :80 {     import block_outcoming     root * /web/html }

Accessing Windows Share (Samba) From Linux (XFCE) using Thunar

In order to access samba (windows share) from Linux XFCE using Thunar file browser you need to: 1. Install samba client sudo apt install smbclient 2. Run: sudo modprobe cifs 3. Open thunar and access the share: smb://IPADDRESS/sharename e.g.: smb://192.168.1.1/photos 4. Type in the username / password in the prompt window Some helpful information: https://forum.manjaro.org/t/thunar-how-do-i-access-folders-shared-on-windows-computers/116649/9

Caddy web server configuration for rewrite with multiple variables parameters

  http://localwebsite {         # Set this path to your site's directory.         #root * /usr/share/caddy         root * /var/www/website           #makes /course/id/name.html to /course.php?id=id&name=name         @zxp {                 #path_regexp myregex ^/course/(\d+)/([%A-Za-z0-9_-]+)\.html$                 path_regexp myregex ^/course/([^/]+)/([^/]+)\.html$         }         rewrite @zxp /course.php?id={re.myregex.1}&name={re.myregex.2}           # rewrite /course/([^/]+)/([^/]+)\.html /course.php?id={1}&name={2}     ...