Skip to content

Instantly share code, notes, and snippets.

View mzubairsaleem's full-sized avatar
🏠
Working from home

Muhammad Zubair Saleem mzubairsaleem

🏠
Working from home
View GitHub Profile

ELK for Asterisk CDR

Assumption:

  • You have 2 VM, 1 for ELK server and the other for Asterisk server
  • Asterisk is setup so that CDR saved in MySQL db asteriskcdrdb
  • From ELK VM you can query MySQL on Asterisk server
  • Asterisk server IP is 192.168.100.2
  • asteriskcdrdb access from ELK server: user: elkdbuser pass: c03br9hncmdD2$Asd
  • We're doing this howto step by step on ELK server VM
async function searchWithScroll(indexName, pageSize, query, maxResults) {
let scrollId;
let results = [];
let _query = Object.keys(query).length === 0 ? {
query: {
"match_all": {}
}
} : {
query: query
};
@mzubairsaleem
mzubairsaleem / logstash-pg-es.md
Created November 23, 2021 17:39 — forked from eriknovak/logstash-pg-es.md
Instructions for setting up the Logstash configuration for synching PostgreSQL with Elasticsearch

Populating Elasticsearch Index with Logstash

Logstash is a free and open server-side data processing pipeline that ingests data from a multitude of sources, transforms it, and then sends it to your favorite "stash."

This section describes how one can use it on UNIX to migrate data from a PostgreSQL database to elasticsearch.

The Prerequisites

@mzubairsaleem
mzubairsaleem / cert.yaml
Created November 19, 2021 21:36 — forked from ebuildy/cert.yaml
Secure elasticsearch cluster
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
name: my-issuer
spec:
selfSigned: {}
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
@mzubairsaleem
mzubairsaleem / ip_in_range.php
Created February 5, 2021 10:11 — forked from tott/ip_in_range.php
php check if IP is in given network range
/**
* Check if a given ip is in a network
* @param string $ip IP to check in IPV4 format eg. 127.0.0.1
* @param string $range IP/CIDR netmask eg. 127.0.0.0/24, also 127.0.0.1 is accepted and /32 assumed
* @return boolean true if the ip is in this range / false if not.
*/
function ip_in_range( $ip, $range ) {
if ( strpos( $range, '/' ) == false ) {
$range .= '/32';
}
@mzubairsaleem
mzubairsaleem / compressMe.py
Created September 29, 2020 08:26 — forked from ShantanuJoshi/compressMe.py
Python Image Compress
#run this in any directory add -v for verbose
#get Pillow (fork of PIL) from pip before running --> pip install Pillow
import os
import sys
from PIL import Image
def compressMe(file, verbose=False):
filepath = os.path.join(os.getcwd(), file)
oldsize = os.stat(filepath).st_size
@mzubairsaleem
mzubairsaleem / data.json
Last active September 4, 2020 22:15
Nested JSON Object Parser in Ruby
{
"http_method":"GET",
"revision":"1598475252.192415",
"results":{
"port1":{
"id":"port1",
"name":"port1",
"alias":"",
"mac":"00:00:00:00:00:00",
"ip":"0.0.0.0",
@mzubairsaleem
mzubairsaleem / downgradeRetryPolicy.js
Created August 21, 2020 14:15 — forked from harigist/downgradeRetryPolicy.js
Downgrade Retry policies in Cassandra using nodejs
/**
* DowngradeRetryPolicy - This module is used to retry the READ / WRITE operation
* by downgrading the value of consistency to minimum value.
* @constructor
*/
function DowngradeRetryPolicy() {
}
// Inherit the retry policy
util.inherits(DowngradeRetryPolicy, RetryPolicy);
@mzubairsaleem
mzubairsaleem / howto.md
Created August 12, 2020 23:00 — forked from novemberborn/howto.md
Creating a PKCS#12 file from a Let's Encrypt certificate
@mzubairsaleem
mzubairsaleem / big-screenshot.js
Created November 29, 2019 19:19 — forked from joelgriffith/big-screenshot.js
Large Puppeteer Images
const puppeteer = require('puppeteer');
const merge = require('merge-img');
const pageUrl = ''; // REPLACE ME
const pageElement = '#svgcanvas'; // REPLACE ME
(async() => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto(pageUrl);