mirror of
				https://github.com/k3s-io/kubernetes.git
				synced 2025-10-30 21:30:16 +00:00 
			
		
		
		
	godep restore pushd $GOPATH/src/github.com/appc/spec git co master popd go get go4.org/errorutil rm -rf Godeps godep save ./... git add vendor git add -f $(git ls-files --other vendor/) git co -- Godeps/LICENSES Godeps/.license_file_state Godeps/OWNERS
		
			
				
	
	
		
			244 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			244 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2014 Google Inc. All Rights Reserved.
 | |
| //
 | |
| // Licensed under the Apache License, Version 2.0 (the "License");
 | |
| // you may not use this file except in compliance with the License.
 | |
| // You may obtain a copy of the License at
 | |
| //
 | |
| //     http://www.apache.org/licenses/LICENSE-2.0
 | |
| //
 | |
| // Unless required by applicable law or agreed to in writing, software
 | |
| // distributed under the License is distributed on an "AS IS" BASIS,
 | |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| // See the License for the specific language governing permissions and
 | |
| // limitations under the License.
 | |
| 
 | |
| package pages
 | |
| 
 | |
| const containersHtmlTemplate = `
 | |
| <html>
 | |
|   <head>
 | |
|     <title>cAdvisor - {{.DisplayName}}</title>
 | |
|     <!-- Latest compiled and minified CSS -->
 | |
|     <link rel="stylesheet" href="{{.Root}}static/bootstrap-3.1.1.min.css">
 | |
| 
 | |
|     <!-- Optional theme -->
 | |
|     <link rel="stylesheet" href="{{.Root}}static/bootstrap-theme-3.1.1.min.css">
 | |
| 
 | |
|     <link rel="stylesheet" href="{{.Root}}static/containers.css">
 | |
| 
 | |
|     <!-- Latest compiled and minified JavaScript -->
 | |
|     <script src="{{.Root}}static/jquery-1.10.2.min.js"></script>
 | |
|     <script src="{{.Root}}static/bootstrap-3.1.1.min.js"></script>
 | |
|     <script type="text/javascript" src="{{.Root}}static/google-jsapi.js"></script>
 | |
| 
 | |
|     <script type="text/javascript" src="{{.Root}}static/containers.js"></script>
 | |
|   </head>
 | |
|   <body>
 | |
|     <div class="container theme-showcase" >
 | |
|       <a href="{{.Root}}" class="col-sm-12" id="logo">
 | |
|       </a>
 | |
|       <div class="col-sm-12">
 | |
| 	<div class="page-header">
 | |
| 	  <h1>{{.DisplayName}}</h1>
 | |
| 	</div>
 | |
| 	<ol class="breadcrumb">
 | |
| 	  {{range $parentContainer := .ParentContainers}}
 | |
| 	  <li><a href="{{$parentContainer.Link}}">{{$parentContainer.Text}}</a></li>
 | |
| 	  {{end}}
 | |
| 	</ol>
 | |
|       </div>
 | |
|       {{if .IsRoot}}
 | |
|       <div class="col-sm-12">
 | |
|         <h4><a href="../docker">Docker Containers</a></h4>
 | |
|       </div>
 | |
|       {{end}}
 | |
|       {{if .Subcontainers}}
 | |
|       <div class="col-sm-12">
 | |
| 	<div class="page-header">
 | |
| 	  <h3>Subcontainers</h3>
 | |
| 	</div>
 | |
| 	<div class="list-group">
 | |
| 	  {{range $subcontainer := .Subcontainers}}
 | |
| 	  <a href="{{$subcontainer.Link}}" class="list-group-item">{{$subcontainer.Text}}</a>
 | |
| 	  {{end}}
 | |
| 	</div>
 | |
|       </div>
 | |
|       {{end}}
 | |
|      {{if .DockerStatus}}
 | |
|       <div class="col-sm-12">
 | |
| 	<div class="page-header">
 | |
| 	  <h3>Driver Status</h3>
 | |
| 	</div>
 | |
| 	<ul class="list-group">
 | |
| 	  {{range $dockerstatus := .DockerStatus}}
 | |
| 	  <li class ="list-group-item"><span class="stat-label">{{$dockerstatus.Key}}</span> {{$dockerstatus.Value}}</li>
 | |
| 	  {{end}}
 | |
| 	  {{if .DockerDriverStatus}}
 | |
| 		<li class ="list-group-item"><span class="stat-label">Storage<br></span>
 | |
| 		<ul class="list-group">
 | |
| 		{{range $driverstatus := .DockerDriverStatus}}
 | |
| 		<li class="list-group-item"><span class="stat-label">{{$driverstatus.Key}}</span> {{$driverstatus.Value}}</li>
 | |
| 		{{end}}
 | |
| 		</ul>
 | |
| 		</li>
 | |
| 	  </ul>
 | |
| 	  {{end}}
 | |
| 	</div>
 | |
|       {{end}}
 | |
|       {{if .DockerImages}}
 | |
|       <div class="col-sm-12">
 | |
|           <div class="page-header">
 | |
|             <h3>Images</h3>
 | |
|           </div>
 | |
|        <div id="docker-images"></div>
 | |
|        <br><br>
 | |
|        </div>
 | |
|       {{end}}
 | |
|       {{if .ResourcesAvailable}}
 | |
|       <div class="col-sm-12">
 | |
| 	<div class="page-header">
 | |
| 	  <h3>Isolation</h3>
 | |
| 	</div>
 | |
| 	{{if .CpuAvailable}}
 | |
| 	<ul class="list-group">
 | |
|           <li class="list-group-item active isolation-title panel-title">CPU</li>
 | |
|           {{if .Spec.Cpu.Limit}}
 | |
|           <li class="list-group-item"><span class="stat-label">Shares</span> {{printShares .Spec.Cpu.Limit}} <span class="unit-label">shares</span></li>
 | |
|           {{end}}
 | |
|           {{if .Spec.Cpu.MaxLimit}}
 | |
|           <li class="list-group-item"><span class="stat-label">Max Limit</span> {{printCores .Spec.Cpu.MaxLimit}} <span class="unit-label">cores</span></li>
 | |
|           {{end}}
 | |
|           {{if .Spec.Cpu.Mask}}
 | |
|           <li class="list-group-item"><span class="stat-label">Allowed Cores</span> {{printMask .Spec.Cpu.Mask .MachineInfo.NumCores}}</li>
 | |
|           {{end}}
 | |
| 	</ul>
 | |
| 	{{end}}
 | |
| 	{{if .MemoryAvailable}}
 | |
| 	<ul class="list-group">
 | |
|           <li class="list-group-item active isolation-title panel-title">Memory</li>
 | |
|           {{if .Spec.Memory.Reservation}}
 | |
|           <li class="list-group-item"><span class="stat-label">Reservation</span> {{printSize .Spec.Memory.Reservation}} <span class="unit-label">{{printUnit .Spec.Memory.Reservation}}</span></li>
 | |
|           {{end}}
 | |
|           {{if .Spec.Memory.Limit}}
 | |
|           <li class="list-group-item"><span class="stat-label">Limit</span> {{printSize .Spec.Memory.Limit}} <span class="unit-label">{{printUnit .Spec.Memory.Limit}}</span></li>
 | |
|           {{end}}
 | |
|           {{if .Spec.Memory.SwapLimit}}
 | |
|           <li class="list-group-item"><span class="stat-label">Swap Limit</span> {{printSize .Spec.Memory.SwapLimit}} <span class="unit-label">{{printUnit .Spec.Memory.SwapLimit}}</span></li>
 | |
|           {{end}}
 | |
| 	</ul>
 | |
| 	{{end}}
 | |
|       </div>
 | |
|       <div class="col-sm-12">
 | |
| 	<div class="page-header">
 | |
| 	  <h3>Usage</h3>
 | |
| 	</div>
 | |
| 	<div class="panel panel-primary">
 | |
|           <div class="panel-heading">
 | |
|             <h3 class="panel-title">Overview</h3>
 | |
|           </div>
 | |
|           <div id="usage-gauge" class="panel-body"></div>
 | |
| 	</div>
 | |
| 	<div class="panel panel-primary">
 | |
|           <div class="panel-heading">
 | |
|             <h3 class="panel-title">Processes</h3>
 | |
|           </div>
 | |
|           <div id="processes-top" class="panel-body"></div>
 | |
| 	</div>
 | |
| 	{{if .CpuAvailable}}
 | |
| 	<div class="panel panel-primary">
 | |
|           <div class="panel-heading">
 | |
|             <h3 class="panel-title">CPU</h3>
 | |
|           </div>
 | |
|           <div class="panel-body">
 | |
|             <h4>Total Usage</h4>
 | |
| 	    <div id="cpu-total-usage-chart"></div>
 | |
| 	    <!-- <h4>CPU Load Average</h4>
 | |
| 	    <div id="cpu-load-chart"></div> -->
 | |
|             <h4>Usage per Core</h4>
 | |
| 	    <div id="cpu-per-core-usage-chart"></div>
 | |
|             <h4>Usage Breakdown</h4>
 | |
| 	    <div id="cpu-usage-breakdown-chart"></div>
 | |
|           </div>
 | |
| 	</div>
 | |
| 	{{end}}
 | |
| 	{{if .MemoryAvailable}}
 | |
| 	<div class="panel panel-primary">
 | |
|           <div class="panel-heading">
 | |
|             <h3 class="panel-title">Memory</h3>
 | |
|           </div>
 | |
|           <div class="panel-body">
 | |
|             <h4>Total Usage</h4>
 | |
| 	    <div id="memory-usage-chart"></div>
 | |
|             <br/>
 | |
|             <div class="row col-sm-12">
 | |
|               <h4>Usage Breakdown</h4>
 | |
|               <div class="col-sm-9">
 | |
| 		<div class="progress">
 | |
|                   <div class="progress-bar progress-bar-danger" id="progress-hot-memory">
 | |
|                     <span class="sr-only">Hot Memory</span>
 | |
|                   </div>
 | |
|                   <div class="progress-bar progress-bar-info" id="progress-cold-memory">
 | |
|                     <span class="sr-only">Cold Memory</span>
 | |
|                   </div>
 | |
| 		</div>
 | |
|               </div>
 | |
|               <div class="col-sm-3" id="memory-text"></div>
 | |
| 	    </div>
 | |
|           </div>
 | |
| 	</div>
 | |
| 	{{end}}
 | |
| 	{{if .NetworkAvailable}}
 | |
| 	<div class="panel panel-primary">
 | |
| 	  <div class="panel-heading">
 | |
|             <h3 class="panel-title">Network</h3>
 | |
| 	  </div>
 | |
|           <div class="panel-body">
 | |
| 	    <div class="dropdown">
 | |
|               <button class="btn btn-default dropdown-toggle" type="button" id="network-selection-dropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
 | |
|                 <span id="network-selection-text"></span>
 | |
|                 <span class="caret"></span>
 | |
| 	      </button>
 | |
|               <ul id="network-selection" class="dropdown-menu" role="menu" aria-labelledby="network-selection-dropdown">
 | |
|               </ul>
 | |
| 	    </div>
 | |
|           </div>
 | |
| 	  <div class="panel-body">
 | |
|             <h4>Throughput</h4>
 | |
|             <div id="network-bytes-chart"></div>
 | |
| 	  </div>
 | |
| 	  <div class="panel-body">
 | |
|             <h4>Errors</h4>
 | |
| 	    <div id="network-errors-chart"></div>
 | |
| 	  </div>
 | |
| 	</div>
 | |
|         {{end}}
 | |
| 	{{if .FsAvailable}}
 | |
| 	<div class="panel panel-primary">
 | |
|           <div class="panel-heading">
 | |
|             <h3 class="panel-title">Filesystem</h3>
 | |
|           </div>
 | |
|           <div id="filesystem-usage" class="panel-body">
 | |
|           </div>
 | |
|         </div>
 | |
| 	{{end}}
 | |
| 	{{if .CustomMetricsAvailable}}
 | |
| 	<div class="panel panel-primary">
 | |
| 	  <div class="panel-heading">
 | |
| 	    <h3 class="panel-title">Application Metrics</h3>
 | |
| 	  </div>
 | |
| 	  <div class="panel-body">
 | |
| 	    <div id="custom-metrics-chart"></div>
 | |
| 	  </div>
 | |
| 	</div>
 | |
| 	{{end}}
 | |
|       </div>
 | |
|       {{end}}
 | |
|     </div>
 | |
|     <script type="text/javascript">
 | |
|       startPage({{.ContainerName}}, {{.CpuAvailable}}, {{.MemoryAvailable}}, {{.Root}}, {{.IsRoot}});
 | |
|       drawImages({{.DockerImages}});
 | |
|     </script>
 | |
|   </body>
 | |
| </html>
 | |
| `
 |