Skip to content

Instantly share code, notes, and snippets.

View danielef's full-sized avatar

Daniel Estévez danielef

  • Ontario, Canada
  • 12:20 (UTC -04:00)
  • X @danielef
View GitHub Profile
@danielef
danielef / caudal.service
Last active February 6, 2019 16:36
Caudal / systemd caudal.service
[Unit]
Description = A fast & powerful event analysis platform
After = network.target
[Service]
Type = simple
PIDFile = /opt/caudal/caudal.pid
ExecStart = /opt/caudal/bin/caudal -d start
ExecStop = /opt/caudal/bin/caudal stop
Restart = always
@danielef
danielef / initial-config.sh
Created December 3, 2018 16:52
Initializes users and its public keys in localhost (Centos 7.5)
#!/bin/bash
# Initial config for users access
function validate_root {
if [ "$USER" -ne "root" ]; then
printf "WARN: this script is for root user\n"
fi
}
function add_user {
@danielef
danielef / clojurescript-eval.cljs
Created June 15, 2018 00:10
Eval clojurescript
cljs.user=> (js/cljs.js.eval (js/cljs.js.empty-state) {:a 1 :b 2 :c 3} (fn [x] (str (:b (:value x)))))
"2"
cljs.user=> (js/cljs.js.eval (js/cljs.js.empty-state) '(+ 1 2) (fn [x] (str (:b (:value x)))))
""
cljs.user=> (js/cljs.js.eval (js/cljs.js.empty-state) '(+ 1 2) (fn [x] (str (:value x))))
"3"
cljs.user=> (js/cljs.js.eval (js/cljs.js.empty-state) '{:a (+ 1 2)} (fn [x] (str (:value x))))
"{:a 3}"
@danielef
danielef / getDosSemanas.clj
Created April 12, 2018 20:45
IWRobot / Da un rango de fecha de entre 2 semanas y hoy
(fn [ctx]
(letfn [(two-weeks []
(let [now (java.util.Calendar/getInstance)
dis -15]
(-> (doto now
(.add java.util.Calendar/DATE dis))
.getTime)))]
(let [fmt (java.text.SimpleDateFormat. "yyyy-MM-dd")]
(str (-> fmt (.format (two-weeks)))
","
@danielef
danielef / gist:38393c4d8b602309df8865b02f064c0b
Created March 21, 2018 22:42
HAProxy / Ejemplo Glassfish
global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 8000
user haproxy
group haproxy
#nbproc 2
daemon
@danielef
danielef / config.clj
Created March 2, 2018 20:13
Caudal / Sink de ejemplo
;; Sinks
(defsink my-sink 1 ;; backpressure
(->INFO [:all]
(time-stampit [:millis]
(->INFO [:all]
(counter [:s-state :n]
(defstream [event]
(println "hola: " event))))))
)
@danielef
danielef / image-pad-out.sh
Created January 27, 2018 12:15
ImageMagick / Image Pad Out
#!/bin/bash
# See http://www.imagemagick.org/Usage/thumbnails/#pad
convert image200x70.png -thumbnail '200x200>' -background transparent -gravity center -extent 200x200 image199x199.png
@danielef
danielef / index-with-mapping.sh
Created January 12, 2018 16:09
#Elasticsearch / Create an index with mapping
curl -XPUT -H "Content-Type: application/json" http://localhost:9200/my-index -d '
{
"mappings": {
"user": {
"properties": {
"name": { "type": "text" },
"user_name": { "type": "keyword" },
"email": { "type": "keyword" }
}
}
@danielef
danielef / space-dir.sh
Created January 5, 2018 15:26
bash/du -sh by directory (support spaces)
#!/bin/bash
for i in $( ls -Al | grep -e "^d"| tr -s ' ' | cut -f9- -d' ' ); do du -sh $i; done
@danielef
danielef / write-to-drive.clj
Created November 9, 2017 18:08
Write GoogleSpreatsheet Clojure
(defn write-to-drive[ctx]
(let [{:keys [sheet-id data-dir]} ctx
httpTransport (com.google.api.client.googleapis.javanet.GoogleNetHttpTransport/newTrustedTransport)
jsonFactory (com.google.api.client.json.jackson2.JacksonFactory/getDefaultInstance)]
(letfn [(authorize []
(let [_ (clojure.java.io/make-parents (str data-dir "/.store/oauth2"))
dataStoreDir (java.io.File. (str data-dir "/.store/oauth2"))
dataStoreFactory (com.google.api.client.util.store.FileDataStoreFactory. dataStoreDir)
scopes (java.util.Arrays/asList (into-array String ["https://www.googleapis.com/auth/spreadsheets"]))