Archives pour avril, 2012

wget : aspirer un site web

bhuisgen@scratchy~$ wget --limit-rate=500k --recursive --no-parent --convert-links --page-requisites --no-clobber --domains=monsite.fr http://www.monsite.fr

Pour récupérer une version purement HTML :

bhuisgen@scratchy~$ wget --limit-rate=500k --recursive --no-parent --convert-links --page-requisites --adjust-extension --no-clobber --domains=monsite.fr http://www.monsite.fr

Zabbix : monitorer l’activité d’un disque

Pour monitorer l’activité disque avec Zabbix, il convient de créer deux éléments par disque :

  • le premier pour la lecture avec la clé vfs.dev.read
  • le second pour l’écriture avec la clé vfs.dev.write

Il faut spécifier 512 comme coefficient de multiplication étant donné que Linux utilise 512 octets par bloc secteur.

 

Voici un rendu graphique des données récupérées :

Remarque : depuis la version 1.8.6 de Zabbix, il est possible de monitorer un volume LVM. Par exemple, pour le LV /dev/mapper/vg-sql, la clé à utiliser serait : vfs.dev.read[vg/sql,sectors].

Java : désactiver la validation d’un certificat SSL

Un moyen rapide et pas propre pour désactiver la validation d’un certificat SSL côté client :

SocketFactory socketFactory;
Socket socket;

TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() {
	public java.security.cert.X509Certificate[] getAcceptedIssuers()
	{
		return null;
	}

	public void checkClientTrusted(
			java.security.cert.X509Certificate[] certs,
			String authType)
	{
	}

	public void checkServerTrusted(
			java.security.cert.X509Certificate[] certs,
			String authType)
	{
	}
} };

try
{
	SSLContext sc = SSLContext.getInstance("TLS");
	sc.init(null, trustAllCerts, new java.security.SecureRandom());

	socketFactory = sc.getSocketFactory();
}
catch (GeneralSecurityException e)
{
	e.printStackTrace();
}

socket = socketFactory.createSocket(host, port);

Shell : récupérer la date du jour précédent

# date "+%y%m%d" --date='-1day'

Java EE : charger un fichier de propriétés depuis un WAR

	Properties properties = new Properties();

	try {
		properties.load(this.getClass().getClassLoader().
			getResourceAsStream("/config.properties));
	} catch (IOException e) {
		throw new RuntimeException(e.getMessage(), e);
	}

Le fichier de propriétés doit être stocké dans le CLASSPATH de l’application web. Dans le cas d’un WAR, il s’agit de WEB-INF/classes.

Haut de page