Archives mensuelles : juin 2018

[Oracle] : Lister nombre de connexion/processus pour une instance

Comment lister le nombre de connexion via le nombre de processus ? c’est assez simple si l’on est hors pooler de connexion. Pour le suivre dans le temps (par exemple toutes les 5 minutes).

#!/bin/bash

while true
do
t=$(date)
ps=$(ps auxwww | grep nominstance |grep -v ora_ | wc -l)
echo $ps
echo $t' --> '$ps >> verif.log
sleep 5m
done

Vous remarquerez que par la boucle while = true on se passe de faire un cron en donnant par exemple un sleep de 5 minutes (on attend 5 minutes pour relancer le script).

Si vous voulez le lancer indéfiniment, il suffit de le mettre dans un fichier qui sera lancé via un nohup.

[Ansible] : Find lister des fichiers et réaliser une action dessus

Ansible est nouveau pour moi donc vous devriez trouver dans les prochains jours pas mal de tips pour réaliser de petites actions.

Aujourd’hui je cherche à lister les fichier d’un répertoire et à réaliser dessus une action. Dans mon cas je vais créer des liens symboliques pour faire en sorte que les binaires oracle soient directement accessible via /usr/bin (dans le path des users). On aurait aussi pu supprimer des fichiers ou autres.

tasks:
  - name: Liste les binaires oracle
    find:
      paths: /usr/lib/oracle/12.2/client64/bin/
    register: result
  - name: Création des liens symboliques
    file:
      src: "{{ item.path }}" 
      dest: /usr/bin/{{ item.path | basename }}
      state: link
    with_items: "{{ result.files }}" 

On met donc la liste des fichiers dans la variable « result ». Il s’agit d’un tableau. Si vous voulez aller plus loin vous pouvez vous référer à la doc sur le module find pour utiliser d’autres éléments du tableau.

Ensuite, on parcourt chaque file avec le with_items. On utilise alors item.path pour récupérer le chemin en dur. Pour la destination on lui applique la commande basename pour récupérer uniquement le nom de fichier.

Au passage j’ai découvert un blog ansible sympa… mais peut être un peu court.