Kiln » KilnSupportScripts Powershell Scripts to help monitor a Kiln environment. Contact Fog Creek support before using.
Clone URL:  
Pushed to one repository · View In Graph Contained in tip

Merge

Changeset 082ee7713ada

Parents 36a36e047661

Parents 96ef3069d0e0

by Profile picture of User 476Ben McCormack <benm@fogcreek.com>

Changes to 3 files · Browse files at 082ee7713ada Showing diff from parent 36a36e047661 96ef3069d0e0 Diff from another changeset...

Change 1 of 1 Show Entire File .hgignore Stacked
 
1
2
3
 
 
 
 
1
2
3
4
5
 
@@ -1,3 +1,5 @@
 syntax: glob    checkBackend.log +*.csv +*.xls* \ No newline at end of file
Change 1 of 1 Show Changes Only checkBackend.ps1 Stacked
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
 
44
45
46
 
47
48
49
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
 
42
43
44
45
46
47
48
49
50
 function Get-URL([string] $url){   (New-Object net.webclient).DownloadString($url)  }    $g_backendUrl = "http://localhost:56783/"    function Test-KilnVersion(){   try {   $resp = Get-Url(($g_backendUrl + "version"))   return ($resp.length -gt 0)   }   catch {   return $False   }  }    function Test-KilnDiff([string] $sRepoGUID, [string] $sChangeset1, [string] $sChangeset2){   try {   $url =$g_backendUrl + "repo/" + $sRepoGUID + "/diff/" + $sChangeset1 + ":" + $sChangeset2 + "?format=json&ignorews=True&maxsize=100000&timeout=10"   $resp = Get-Url($url)   return ($resp.length -gt 0)   }   catch {   return $False   }  }    function Log-ServiceStats([string] $service, [string] $logFile){   try {   $measure = get-process $service -ErrorAction Stop | Measure-Object WorkingSet -sum   write "$(Get-Date -format o) The service $service has $($measure.Count) instances with a total WorkingSet of: $($measure.Sum)" | out-file -append $logFile   }   catch {   write "$(Get-Date -format o) The service $service is not currently running." | out-file -append $logFile   }  }    function Check-KilnBackend([string] $sRepoGUID, [string] $sChangeset1, [string] $sChangeset2, [string] $logFile){   if (-Not ((Test-KilnVersion) -and (Test-KilnDiff $sRepoGUID $sChangeset1 $sChangeset2))){   #Restart the Kiln storage Service because something bad happened   write "$(Get-Date -format o) Something is wrong. Restarting Kiln Storage Service" | out-file -append $logFile - sc.exe stop "KilnStorageService" - sc.exe start "KilnStorageService" + Restart-Service "KilnStorageService" + return False   }   else {   write "$(Get-Date -format o) Kiln backend is OK" | out-file -append $logFile + return True   }  }  
Change 1 of 1 Show Entire File tools.ps1 Stacked
 
 
 
 
 
 
1
2
3
 
@@ -0,0 +1,3 @@
+function Get-BackendMemoryFromLog([string]$logFile){ + cat $logFile | Select-String "service backend" | foreach{"`"$(($_ -split ' ')[0])`"`t$([int](($_ -split ":")[-1]))`t$([int](($_ -split ":")[-1])/1024/1024)"} +} \ No newline at end of file