Serveur d'impression

PowerShell One-Liner pour l'audit des travaux d'impression sur un serveur d'impression Windows – Mike F Robbins – Bien choisir son serveur d impression

Par Titanfall , le 23 août 2019 - 5 minutes de lecture

Vous avez été chargé d’auditer les travaux d’impression sur le serveur d’impression Windows de votre société pour déterminer qui gaspille une telle quantité de papier et de toner et qui provoque une usure excessive des imprimantes. Il n'y a pas de budget pour cette tâche et vous devez avoir quelque chose à montrer d'ici la fin de la journée.

Vous commenceriez probablement par rechercher sur Internet, mais la plupart des résultats que vous obtiendrez pour accomplir cette tâche sont trop compliqués ou ne fonctionnent tout simplement pas. Heureusement, cette tâche peut être accomplie avec une doublure PowerShell. Le journal des événements contenant les informations que vous recherchez est «Microsoft-Windows-PrintService / Operational». Il est désactivé par défaut et doit être activé avant de pouvoir commencer à enregistrer les informations que vous souhaitez interroger.

Tout d’abord, vérifiez le statut du journal des événements pour vous assurer qu’il n’est pas déjà activé. Cette méthode d’activation du journal des événements ne fonctionnera pas avec les journaux d’événements classiques. Par conséquent, si vous activez ou désactivez un autre journal des événements, confirmez que ce n’est pas l’un d’entre eux. En plus de renvoyer les résultats, la première commande stocke les résultats dans une variable appelée «PrinterLog». Utilisez cette variable pour activer le journal, puis enregistrez les modifications. Ensuite, vérifiez si les modifications ont bien pris effet:

L'historique d'impression ne peut être extrait qu'à partir du moment où le journal a été activé et transféré, comme indiqué dans l'exemple précédent.

Requête simple que le journal des événements de l'ID d'événement 307 à l'aide de Get-WinEvent cmdlet. Une grande partie des informations souhaitées sont stockées dans la collection de propriétés. La plupart des exemples que j'ai vus sur Internet analysent XML pour ces résultats et il n’ya tout simplement aucune raison d’ajouter ce niveau de complexité. Mon chapitre (chapitre 6) du livre PowerShell Deep Dives traite de l’interrogation plus détaillée des journaux d’événements si cela vous intéresse.

L'exemple suivant récupère les informations du dernier jour. N'oubliez pas non plus que ce journal d'événements est écrasé par défaut afin que les informations ne soient pas conservées pour toujours.

Vous pouvez également exporter les résultats vers un fichier CSV si nécessaire:

Pour des raisons de simplicité, les exemples présentés dans cet article de blog ont été exécutés directement sur le serveur d'impression lui-même. Ils pourraient tout aussi facilement être exécutés à distance et tout en Get-WinEvent a un Nom de l'ordinateur paramètre, son exécution de cette manière sera probablement bloquée par le pare-feu du serveur distant. Le moyen le plus simple de l’exécuter à distance consiste à envelopper les commandes présentées dans cet article de blog à l’intérieur de Invoke-Command tant que la communication à distance de PowerShell est activée sur le serveur distant.

µ

Click to rate this post!
[Total: 0 Average: 0]

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.