Question Recuperation URL + application IIS

Plus d'informations
il y a 6 ans 7 mois #24195 par Philippe
bon j'ai quand même IIS avec un site par défaut et donc incomplet
mais ça donne les infos pour le script

voici la version monitor :

[code:1]##############################################################################
##
## Website Availability Monitoring
## Created by Sravan Kumar S
## Date : 19 Apr 2013
## Version : 1.0
## Email: Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
##
## revue et corriger par 6ratgus le 06/09/2017
## via powershell-scripting.com
##
##############################################################################

$URLList = Get-Website | foreach {
$name = $_.name
Get-WebBinding -Name $name | foreach {
$protocol = $_.protocol + \"://\"
$site = $_.bindinginformation.Split(\":\"«»)[-1] +\":\"+$_.bindinginformation.Split(\":\"«»)[-2]
$protocol + $site
Get-WebApplication -site $name | foreach {
$protocol + $site + $_.path
}
}
}


$Result = @()

Foreach ($Uri in $URLList) {
$time = try {
$request = $null
## Request the URI, and measure how long the response took.
$result1 = Measure-Command { $request = Invoke-WebRequest -Uri $uri }
$result1.TotalMilliseconds
}
catch {
<# If the request generated an exception (i.e.: 500 server
error or 404 not found), we can pull the status code from the
Exception.Response property #>
$request = $_.Exception.Response
$time = -1
}
$result += [PSCustomObject] @{
Time = Get-Date;
Uri = $uri;
StatusCode = [int] $request.StatusCode;
StatusDescription = $request.StatusDescription;
ResponseLength = $request.RawContentLength;
TimeTaken = $time;
}
}
#Prepare email body in HTML format
if($result -ne $null) {
$Outputreport = \"<HTML><TITLE>Website Availability Report</TITLE><BODY background-color:«»peachpuff><font color =\"\"
#99000\"\" face=\"\"Microsoft Tai le\"\"><H2> Website Availability Report </H2></font><Table border=1
cellpadding=0 cellspacing=0><TR bgcolor=gray align=center><TD><B>URL</B></TD><TD><B>StatusCode</B></
TD><TD><B>StatusDescription</B></TD><TD><B>ResponseLength</B></TD><TD><B>TimeTaken</B></TD</TR>\"
Foreach($Entry in $Result) {
if ($Entry.StatusCode -ne \"200\"«») {
$Outputreport += \"<TR bgcolor=red>\"
}
else {
$Outputreport += \"<TR bgcolor=green>\"
}
$Outputreport += \"<TD>$($Entry.uri)</TD><TD align=center>$($Entry.StatusCode)</TD><TD align=center>
$($Entry.StatusDescription)</TD><TD align=center>$($Entry.ResponseLength)</TD><TD align=center>
$($Entry.timetaken)</TD></TR>\"
}
$Outputreport += \"</Table></BODY></HTML>\"
}

$Outputreport | out-file \"C:\Scripts\Test.htm\"
Invoke-Expression \"C:\Scripts\Test.htm\"
[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.080 secondes
Propulsé par Kunena