Skip to content

Instantly share code, notes, and snippets.

View NitriKx's full-sized avatar

Benoît Sauvère NitriKx

View GitHub Profile
@NitriKx
NitriKx / delete-detached-disks.sh
Created June 24, 2015 07:46
[Google Compute Engine] - Delete all the detached disks
gcloud compute disks delete $(gcloud compute disks list --format json | jq '.[] | select (has("users") | not) | .name' -r)
@NitriKx
NitriKx / IAWS-Projet-Jersey-Exception-Logger-Stdout
Last active August 29, 2015 14:17
Classe permettant de logger les exception survenues dans Jersey dans la sortie standard
package iaws.tblabsauzzya.ugmont;
import org.glassfish.grizzly.utils.Exceptions;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.Response;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
@NitriKx
NitriKx / IAWS-Projet-Jersey-Exception-Logger-SLF4J
Last active August 29, 2015 14:17
Classe permettant de logger les exception survenues dans Jersey à travers SLF4J
package iaws.tblabsauzzya.ugmont;
import org.glassfish.grizzly.utils.Exceptions;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.Response;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
@NitriKx
NitriKx / gist:273b5fa97ef3efd8d757
Created September 1, 2014 17:18
[BASH 4.0] - Compute AWS S3 Data Transfert Out parsing S3 Logging files
# The key of the map is the first folder name
PATTERN=".*/mybucket/([^/]+)/.*200 - ([0-9]+) .*"
unset costMap
# Requires Bash 4.0
declare -A costMap
for file in $(ls .); do
@NitriKx
NitriKx / AppengineLogAppender
Created August 6, 2014 14:58
Logback logs converter into GAE log (which uses JUL)
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Logger;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.IThrowableProxy;
import ch.qos.logback.classic.spi.LoggingEvent;
import ch.qos.logback.classic.spi.StackTraceElementProxy;
import ch.qos.logback.core.AppenderBase;
@NitriKx
NitriKx / generate-aws-credential-file-based-iam-role-new-aws-cli-tool-security-token
Last active December 21, 2015 07:29
[New AWS CLI Tool] Create an aws-credential-file based on EC2 instance role using security token.
#!/bin/bash
ROLE=`curl http://169.254.169.254/latest/meta-data/iam/security-credentials/`
JSON=`curl http://169.254.169.254/latest/meta-data/iam/security-credentials/${ROLE}`
TOKEN=`echo ${JSON} | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed 's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g' | grep -w 'Token' | cut -d":" -f2| sed -e 's/^ *//g' -e 's/ *$//g'`
# Get instance region and make it the default endpoint
EC2_AVAIL_ZONE=`curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone`
AWS_INSTANCE_REGION="`echo \"$EC2_AVAIL_ZONE\" | sed -e 's:\([0-9][0-9]*\)[a-z]*\$:\\1:'`"
@NitriKx
NitriKx / generate-aws-credential-file-based-iam-role-new-aws-cli-tool
Last active December 21, 2015 07:29
[New AWS CLI Tool] Create an aws-credential-file based on EC2 instance role.
#!/bin/bash
ROLE=`curl http://169.254.169.254/latest/meta-data/iam/security-credentials/`
JSON=`curl http://169.254.169.254/latest/meta-data/iam/security-credentials/${ROLE}`
# Get access keys
AWS_ACCESS_KEY=`echo ${JSON} | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed 's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g' | grep -w 'AccessKeyId' | cut -d":" -f2| sed -e 's/^ *//g' -e 's/ *$//g'`
AWS_SECRET_KEY=`echo ${JSON} | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed 's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g' | grep -w 'SecretAccessKey' | cut -d":" -f2| sed -e 's/^ *//g' -e 's/ *$//g'`
SECURITY_TOKEN=`echo ${JSON} | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed 's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g' | grep -w 'Token' | cut -d":" -f2| sed -e 's/^ *//g' -e 's/ *$//g'`
# Get insta
@NitriKx
NitriKx / generate-aws-credential-file-based-iam-role
Last active December 21, 2015 07:28
[Old CLI Tool] Create an aws-credential-file based on EC2 instance role.
#!/bin/bash
ROLE=`curl http://169.254.169.254/latest/meta-data/iam/security-credentials/`
JSON=`curl http://169.254.169.254/latest/meta-data/iam/security-credentials/${ROLE}`
AWS_ACCESS_KEY=`echo ${JSON} | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed 's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g' | grep -w 'AccessKeyId' | cut -d":" -f2| sed -e 's/^ *//g' -e 's/ *$//g'`
AWS_SECRET_KEY=`echo ${JSON} | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed 's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g' | grep -w 'SecretAccessKey' | cut -d":" -f2| sed -e 's/^ *//g' -e 's/ *$//g'`
echo "AWSAccessKeyId=${AWS_ACCESS_KEY}" > /tmp/aws_credentials
echo "AWSSecretKey=${AWS_SECRET_KEY}" >> /tmp/aws_credentials