You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by cd...@apache.org on 2008/12/05 21:30:21 UTC
svn commit: r723855 [11/23] - in /hadoop/core/trunk: ./ src/contrib/
src/contrib/chukwa/ src/contrib/chukwa/bin/ src/contrib/chukwa/conf/
src/contrib/chukwa/docs/ src/contrib/chukwa/docs/paper/
src/contrib/chukwa/hadoop-packaging/ src/contrib/chukwa/li...
Added: hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkDumper.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkDumper.java?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkDumper.java (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkDumper.java Fri Dec 5 12:30:14 2008
@@ -0,0 +1,79 @@
+package org.apache.hadoop.chukwa.validationframework.interceptor;
+
+import java.io.DataOutputStream;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Iterator;
+
+import org.apache.hadoop.chukwa.Chunk;
+
+public class ChunkDumper
+{
+ static public String testRepositoryDumpDir = "/tmp/chukwaDump/";
+ static HashMap<String, DataOutputStream> hash = new HashMap<String, DataOutputStream>();
+
+ public static void dump(String component,Chunk chunk)
+ {
+
+ String fileName = chunk.getApplication();
+
+ if (!hash.containsKey(component + "-" +fileName))
+ {
+ File directory = new File(testRepositoryDumpDir+ "/"+ component );
+ if (!directory.exists())
+ {
+ directory.mkdirs();
+ }
+ String name = fileName;
+ if (fileName.indexOf("/") >= 0)
+ {
+ name = fileName.substring(fileName.lastIndexOf("/"));
+ }
+ name += ".bin";
+
+ synchronized(name.intern())
+ {
+ System.out.println("FileName [" + name + "]");
+ try
+ {
+ DataOutputStream dos=new DataOutputStream(new FileOutputStream(new File(testRepositoryDumpDir+ "/"+ component + "/" + name)));
+ System.out.println("Writing to [" + testRepositoryDumpDir+ "/"+ component + "/" + name + "]");
+ hash.put(component + "-" +fileName, dos);
+ } catch (FileNotFoundException e)
+ {
+ e.printStackTrace();
+ }
+ }
+ }
+ String key = component + "-" +fileName;
+ synchronized(key.intern())
+ {
+ DataOutputStream dos = hash.get(key);
+ try
+ {
+ chunk.write(dos);
+ dos.flush();
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ static void close()
+ {
+ Iterator<String> it = hash.keySet().iterator();
+ while(it.hasNext())
+ {
+ String key = it.next();
+ DataOutputStream dos = hash.get(key);
+ try{ dos.close();}
+ catch (Exception e)
+ { e.printStackTrace();}
+ }
+ }
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkQueueInterceptor.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkQueueInterceptor.java?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkQueueInterceptor.java (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/ChunkQueueInterceptor.java Fri Dec 5 12:30:14 2008
@@ -0,0 +1,40 @@
+package org.apache.hadoop.chukwa.validationframework.interceptor;
+
+import java.util.List;
+
+import org.apache.hadoop.chukwa.Chunk;
+import org.apache.hadoop.chukwa.datacollection.ChunkQueue;
+
+public class ChunkQueueInterceptor implements
+ org.apache.hadoop.chukwa.datacollection.ChunkQueue
+{
+ private ChunkQueue defaultQueue = null;
+
+ public ChunkQueueInterceptor(ChunkQueue defaultQueue)
+ {
+ this.defaultQueue = defaultQueue;
+ }
+
+ @Override
+ public void add(Chunk chunk) throws InterruptedException
+ {
+ ChunkDumper.dump("adaptor", chunk);
+ defaultQueue.add(chunk);
+ }
+
+ @Override
+ public void collect(List<Chunk> chunks, int count)
+ throws InterruptedException
+ {
+ defaultQueue.collect(chunks, count);
+ for(Chunk chunk: chunks)
+ { ChunkDumper.dump("sender", chunk);}
+ }
+
+ @Override
+ public int size()
+ {
+ return defaultQueue.size();
+ }
+
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/SetupTestClasses.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/SetupTestClasses.java?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/SetupTestClasses.java (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/interceptor/SetupTestClasses.java Fri Dec 5 12:30:14 2008
@@ -0,0 +1,34 @@
+package org.apache.hadoop.chukwa.validationframework.interceptor;
+
+import java.lang.reflect.Field;
+
+import org.apache.hadoop.chukwa.datacollection.ChunkQueue;
+import org.apache.hadoop.chukwa.datacollection.DataFactory;
+
+public class SetupTestClasses
+{
+ public static void setupClasses() throws Throwable
+ {
+ setupChunkQueueInterceptor();
+ }
+
+ static protected void setupChunkQueueInterceptor() throws Throwable
+ {
+ DataFactory da = DataFactory.getInstance();
+ ChunkQueue chunkQueue = da.getEventQueue();
+
+ final Field fields[] = DataFactory.class.getDeclaredFields();
+ for (int i = 0; i < fields.length; ++i)
+ {
+ if ("chunkQueue".equals(fields[i].getName()))
+ {
+ Field f = fields[i];
+ f.setAccessible(true);
+ ChunkQueue ci = new ChunkQueueInterceptor(chunkQueue);
+ f.set(da, ci);
+ System.out.println("Adding QueueInterceptor");
+ break;
+ }
+ }
+ }
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/DataOperations.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/DataOperations.java?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/DataOperations.java (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/DataOperations.java Fri Dec 5 12:30:14 2008
@@ -0,0 +1,205 @@
+package org.apache.hadoop.chukwa.validationframework.util;
+
+import java.io.DataInputStream;
+import java.io.EOFException;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.net.URI;
+
+import org.apache.hadoop.chukwa.ChukwaArchiveKey;
+import org.apache.hadoop.chukwa.Chunk;
+import org.apache.hadoop.chukwa.ChunkImpl;
+import org.apache.hadoop.chukwa.conf.ChukwaConfiguration;
+import org.apache.hadoop.chukwa.extraction.engine.ChukwaRecord;
+import org.apache.hadoop.chukwa.extraction.engine.ChukwaRecordKey;
+import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
+import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.io.SequenceFile;
+import org.apache.log4j.Logger;
+
+public class DataOperations
+{
+ static Logger log = Logger.getLogger(DataOperations.class);
+
+ public static void copyFile(String fromFileName, String toFileName)
+ throws IOException
+ {
+ File fromFile = new File(fromFileName);
+ File toFile = new File(toFileName);
+
+ FileInputStream from = null;
+ FileOutputStream to = null;
+ try
+ {
+ from = new FileInputStream(fromFile);
+ to = new FileOutputStream(toFile);
+ byte[] buffer = new byte[4096];
+ int bytesRead;
+
+ while ((bytesRead = from.read(buffer)) != -1)
+ to.write(buffer, 0, bytesRead); // write
+ } finally
+ {
+ if (from != null)
+ try
+ {
+ from.close();
+ } catch (IOException e)
+ {
+ ;
+ }
+ if (to != null)
+ try
+ {
+ to.close();
+ } catch (IOException e)
+ {
+ // ;
+ }
+ }
+ }
+
+ public static boolean validateMD5(String inputFile, String testFile)
+ {
+ // System.out.println("validateMD5 [" + inputFile + "] [" + testFile
+ // + "]");
+ String md5_1 = MD5.checksum(new File(inputFile));
+ String md5_2 = MD5.checksum(new File(testFile));
+ // System.out.println("MD5 [" + md5_1 + "] [" + md5_2 + "]");
+ return md5_1.intern() == md5_2.intern();
+ }
+
+ public static boolean validateMD5(FileSystem fs, Path inputFile, Path testFile)
+ {
+ // System.out.println("validateMD5 [" + inputFile + "] [" + testFile
+ // + "]");
+ String md5_1 = MD5.checksum(fs, inputFile);
+ String md5_2 = MD5.checksum(fs, testFile);
+ // System.out.println("MD5 [" + md5_1 + "] [" + md5_2 + "]");
+ return md5_1.intern() == md5_2.intern();
+ }
+
+ public static boolean validateChukwaRecords(FileSystem fs,
+ Configuration conf, Path inputFile, Path testFile)
+ {
+ SequenceFile.Reader goldReader = null;
+ SequenceFile.Reader testReader = null;
+ try
+ {
+ // log.info(">>>>>>>>>>>>>> Openning records [" + inputFile.getName()
+ // +"][" + testFile.getName() +"]");
+ goldReader = new SequenceFile.Reader(fs, inputFile, conf);
+ testReader = new SequenceFile.Reader(fs, testFile, conf);
+
+ ChukwaRecordKey goldKey = new ChukwaRecordKey();
+ ChukwaRecord goldRecord = new ChukwaRecord();
+
+ ChukwaRecordKey testKey = new ChukwaRecordKey();
+ ChukwaRecord testRecord = new ChukwaRecord();
+
+ // log.info(">>>>>>>>>>>>>> Start reading");
+ while (goldReader.next(goldKey, goldRecord))
+ {
+ testReader.next(testKey, testRecord);
+
+ if (goldKey.compareTo(testKey) != 0)
+ {
+ log.info(">>>>>>>>>>>>>> Not the same Key");
+ log.info(">>>>>>>>>>>>>> Record [" + goldKey.getKey() + "] ["
+ + goldKey.getReduceType() + "]");
+ log.info(">>>>>>>>>>>>>> Record [" + testKey.getKey() + "] ["
+ + testKey.getReduceType() + "]");
+ return false;
+ }
+
+ if (goldRecord.compareTo(testRecord) != 0)
+ {
+ log.info(">>>>>>>>>>>>>> Not the same Value");
+ log.info(">>>>>>>>>>>>>> Record [" + goldKey.getKey() + "] ["
+ + goldKey.getReduceType() + "]");
+ log.info(">>>>>>>>>>>>>> Record [" + testKey.getKey() + "] ["
+ + testKey.getReduceType() + "]");
+ log.info(">>>>>>>>>>>>>> Gold Value [" + goldRecord.toString() + "]");
+ log.info(">>>>>>>>>>>>>> Test value [" + testRecord.toString() + "]");
+
+ return false;
+ }
+ }
+ // log.info(">>>>>>>>>>>>>> Same File");
+ return true;
+ } catch (IOException e)
+ {
+ e.printStackTrace();
+ return false;
+ } finally
+ {
+ try
+ {
+ goldReader.close();
+ testReader.close();
+ } catch (IOException e)
+ {
+ }
+
+ }
+ }
+
+ public static void extractRawLogFromdataSink(String directory, String fileName)
+ throws Exception
+ {
+ ChukwaConfiguration conf = new ChukwaConfiguration();
+ String fsName = conf.get("writer.hdfs.filesystem");
+ FileSystem fs = FileSystem.get(new URI(fsName), conf);
+
+ SequenceFile.Reader r = new SequenceFile.Reader(fs, new Path(directory
+ + fileName + ".done"), conf);
+
+ File outputFile = new File(directory + fileName + ".raw");
+
+ ChukwaArchiveKey key = new ChukwaArchiveKey();
+ ChunkImpl chunk = ChunkImpl.getBlankChunk();
+ FileWriter out = new FileWriter(outputFile);
+ try
+ {
+ while (r.next(key, chunk))
+ {
+ out.write(new String(chunk.getData()));
+ }
+ } finally
+ {
+ out.close();
+ r.close();
+ }
+
+ }
+
+ public static void extractRawLogFromDump(String directory, String fileName)
+ throws Exception
+ {
+ File inputFile = new File(directory + fileName + ".bin");
+ File outputFile = new File(directory + fileName + ".raw");
+ DataInputStream dis = new DataInputStream(new FileInputStream(inputFile));
+ Chunk chunk = null;
+ FileWriter out = new FileWriter(outputFile);
+ boolean eof = false;
+ do
+ {
+ try
+ {
+ chunk = ChunkImpl.read(dis);
+ out.write(new String(chunk.getData()));
+ } catch (EOFException e)
+ {
+ eof = true;
+ }
+
+ } while (!eof);
+
+ dis.close();
+ out.close();
+ }
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/MD5.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/MD5.java?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/MD5.java (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/test/org/apache/hadoop/chukwa/validationframework/util/MD5.java Fri Dec 5 12:30:14 2008
@@ -0,0 +1,67 @@
+package org.apache.hadoop.chukwa.validationframework.util;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
+import java.security.MessageDigest;
+
+import org.apache.hadoop.fs.FSDataInputStream;
+import org.apache.hadoop.fs.FileSystem;
+import org.apache.hadoop.fs.Path;
+
+public class MD5
+{
+ public static String checksum(File file) {
+ try {
+ InputStream fin = new FileInputStream(file);
+ java.security.MessageDigest md5er =
+ MessageDigest.getInstance("MD5");
+ byte[] buffer = new byte[1024];
+ int read;
+ do {
+ read = fin.read(buffer);
+ if (read > 0)
+ md5er.update(buffer, 0, read);
+ } while (read != -1);
+ fin.close();
+ byte[] digest = md5er.digest();
+ if (digest == null)
+ return null;
+ String strDigest = "0x";
+ for (int i = 0; i < digest.length; i++) {
+ strDigest += Integer.toString((digest[i] & 0xff)
+ + 0x100, 16).substring(1).toUpperCase();
+ }
+ return strDigest;
+ } catch (Exception e) {
+ return null;
+ }
+ }
+
+ public static String checksum(FileSystem fs,Path file) {
+ try {
+ FSDataInputStream fin = fs.open(file);
+ java.security.MessageDigest md5er =
+ MessageDigest.getInstance("MD5");
+ byte[] buffer = new byte[1024];
+ int read;
+ do {
+ read = fin.read(buffer);
+ if (read > 0)
+ md5er.update(buffer, 0, read);
+ } while (read != -1);
+ fin.close();
+ byte[] digest = md5er.digest();
+ if (digest == null)
+ return null;
+ String strDigest = "0x";
+ for (int i = 0; i < digest.length; i++) {
+ strDigest += Integer.toString((digest[i] & 0xff)
+ + 0x100, 16).substring(1).toUpperCase();
+ }
+ return strDigest;
+ } catch (Exception e) {
+ return null;
+ }
+ }
+}
Modified: hadoop/core/trunk/src/contrib/chukwa/src/web/collector/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/collector/WEB-INF/web.xml?rev=723855&r1=723854&r2=723855&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/collector/WEB-INF/web.xml (original)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/collector/WEB-INF/web.xml Fri Dec 5 12:30:14 2008
@@ -16,7 +16,7 @@
<servlet-class>org.apache.hadoop.chukwa.datacollection.collector.servlet.ServletCollector</servlet-class>
<init-param>
<param-name>chukwaCollector.outputDir</param-name>
- <param-value>hdfs://localhost:9000/user/jboulon/chukwa/logs</param-value>
+ <param-value>hdfs://localhost:9000/chukwa/logs</param-value>
</init-param>
<init-param>
<param-name>chukwaCollector.rotateInterval</param-name>
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/jsp2/taglib.tld
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/jsp2/taglib.tld?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/jsp2/taglib.tld (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/jsp2/taglib.tld Fri Dec 5 12:30:14 2008
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+
+<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
+ version="2.0">
+ <description>A tag library exercising SimpleTag handlers.</description>
+ <tlib-version>1.0</tlib-version>
+ <short-name>SimpleTagLibrary</short-name>
+ <uri>/SimpleTagLibrary</uri>
+ <tag>
+ <description>Workspace views JSON Coverter</description>
+ <name>findViews</name>
+ <tag-class>org.apache.hadoop.chukwa.hicc.ViewsTag</tag-class>
+ <body-content>scriptless</body-content>
+ <attribute>
+ <name>key</name>
+ <required>false</required>
+ <rtexprvalue>false</rtexprvalue>
+ </attribute>
+ </tag>
+</taglib>
+
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/web.xml?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/web.xml (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/WEB-INF/web.xml Fri Dec 5 12:30:14 2008
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+ version="2.5">
+
+ <description>
+ Workspace
+ </description>
+ <display-name>Workspace</display-name>
+
+ <servlet>
+ <servlet-name>Workspace</servlet-name>
+ <servlet-class>org.apache.hadoop.chukwa.hicc.Workspace</servlet-class>
+ </servlet>
+ <servlet>
+ <servlet-name>Iframe</servlet-name>
+ <servlet-class>org.apache.hadoop.chukwa.hicc.Iframe</servlet-class>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>Workspace</servlet-name>
+ <url-pattern>/Workspace</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping>
+ <servlet-name>Iframe</servlet-name>
+ <url-pattern>/iframe/*</url-pattern>
+ </servlet-mapping>
+</web-app>
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/default.css
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/default.css?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/default.css (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/default.css Fri Dec 5 12:30:14 2008
@@ -0,0 +1,704 @@
+a:hover {text-decoration:underline;}
+a:link {text-decoration:none;}
+
+.formTableContent {background-color:#FFFFFF;text-align:left;vertical-align:top;}
+.formTableLeft {font-weight:bold;text-align:right;background-color:#CCCCCC;vertical-align:top;text-indent:3pt;}
+.formInput {font:normal 11px Arial;color:#3A5A87;padding-left:0px;}
+.formInput-disabled { font:normal 11px Arial;color:#3A5A87;background-color:#DDDDDD;padding-left:0px; }
+.formReadOnly {border-style:solid;border-width:1px;border-color:#C0C0C0;font:bold 11px Arial;color:#3A5A87;padding-left:0px;}
+.formTable {font:normal 11px Arial;background-color:#AAAAAA;}
+.formControlRow {font:normal 11px Arial;color:#333333;background-image:url(/images/controlBackground.jpg);background-repeat:repeat-x;}
+.formButton {font:bold 11px Arial;color:#FFFFFF;background-image:url(images/titlebar.gif);background-color:#7B0099;vertical-align:middle;border-width:1px;height:20px;border:1px solid #000;}
+.formButton:hover { font:bold 11px Arial;color:#000000;background-image:url(images/navbar-selected.gif);vertical-align:middle;border-width:1px;height:20px;border:1px solid #000; }
+.formButton-disabled {font:bold 11px Arial;color:#AAAAAA;background-color:#DDDDDD;vertical-align:middle;border-width:1px;height:20px;}
+.formRadio {width:14px;}
+.formSelect {font:normal 11px Arial;color:#3A5A87;z-index:100;}
+a.hyperlink:link {color:inherit;text-decoration:underline; }
+a.hyperlink:visited {color:inherit;text-decoration:underline; }
+a.hyperlink:hover {color:#5E76AA;text-decoration:underline;background:#E9EE94; }
+a.hyperlink:active {color:inherit;text-decoration:underline }
+
+A.Dropdown {font-family:Arial;color:#1E4F66;text-decoration:none;}
+A.Dropdown:visited {font-family:Arial;color:#1E4F66;text-decoration:none;}
+A.Dropdown:active {font-family:Arial;color:#1E4F66;text-decoration:underline;}
+A.Dropdown:hover {font-family:Arial;color:#1E4F66;text-decoration:underline;}
+A.Dropdown:link {font-family:Arial;color:#1E4F66;text-decoration:none;}
+
+A.sectionLink {font-family:Arial;color:#FFFFFF;text-decoration:none;}
+A.sectionLink:visited {font-family:Arial;color:#FFFFFF;text-decoration:none;}
+A.sectionLink:active {font-family:Arial;color:#FFFFFF;text-decoration:none;}
+A.sectionLink:hover {font-family:Arial;color:#FFFFFF;text-decoration:none;}
+A.sectionLink:link {font-family:Arial;color:#FFFFFF;text-decoration:none;}
+
+
+body {font-family:Arial;background-color:#ffffff;}
+
+.messageTable {font:normal 11px Arial;background-color:#999999;border-style:solid;border-top:0;border-bottom:0;border-width:1px;border-color:#777772;}
+.messageTableContent {font:normal 11px Arial;background-color:#FFFFFF;color:#1E4F66;text-align:left;}
+.messageTableLeft {font:bold 11px Arial;background-color:#e9e8e6;text-align:left;color:#555555;vertical-align:top;}
+.messageTableRight {font:normal 11px Arial;background-color:#e9e8e6;text-align:left;color:#555555;vertical-align:top;}
+.tableBorder {border-style:solid;border-top:0;border-width:1px;border-color:#777772;font:normal 11px Arial;color:#1E4F66;}
+.tableBorder-alt {border-style:solid;border-top:0;border-width:1px;border-color:#777772;background-color:#F5FAFA;font:normal 11px Arial;color:#1E4F66;}
+.tableBorderSide {border-style:solid;border-top:0;border-bottom:0;border-width:1px;border-color:#777772;}
+.whitespace {background-color:#FFFFFF;}
+.formControlRowBottom {font:bold 11px Arial;color:#FFFFFF;background-image:url(/images/controlBackgroundBottom.jpg);background-repeat:repeat-x;}
+.mailListBorder {background-color:#c0c0c0;}
+.configurationTableContent {font:normal 11px Arial;color:#000000;background-color:#FFFFFF;height:14;}
+.configurationTable {font-size:11px;border-style:solid;border-top:0;border-width:1px;border-color:#777772;background-color:#FFFFFF;}
+
+
+.table-subhead {font:bold 11px Arial;color:#4a4a4a;background-color:#E9E8E6;height:25px;vertical-align:middle;}
+.white { background-color:#ffffff;background-image:none; }
+
+.glossy_icon {
+ position:relative; /*this is the key*/
+ z-index:24;
+ text-decoration:none
+}
+
+.glossy_icon img {
+ position:relative; /*this is the key*/
+ z-index:24;
+ filter:progid:DXImageTransform.Microsoft.Alpha(opacity=65);
+ opacity:.65; -moz-opacity: 0.65;
+ text-decoration:none;
+ border:none;
+}
+
+.glossy_icon:hover {
+ z-index:25;
+ border:none;
+ text-decoration:none;
+ filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100);
+ opacity:1.00; -moz-opacity: 1.00;
+}
+
+.glossy_icon:hover img {
+ z-index:25;
+ border:none;
+ filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100);
+ opacity:1.00; -moz-opacity: 1.00;
+}
+
+.glossy_icon span{display: none}
+
+.glossy_icon:hover span{ /*the span will display just on :hover state*/
+ filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100);
+ color:#000;
+ display:block;
+ position:absolute;
+ top:2em;left:-2em;
+ border:1px solid #000;
+ padding: 2px 2px 2px 2px;
+ background-color:#FFFFE1; color:#000;
+ font:normal 11px Arial;
+ text-align: right;
+ text-decoration:none;
+}
+
+.glossy_icon:disabled {
+ border:none;
+ filter:progid:DXImageTransform.Microsoft.Alpha(opacity=25);
+ opacity:.25; -moz-opacity: 0.25;
+}
+
+.group_box {
+ font:normal 11px Arial;
+ color:#1E4F66;
+ width:100%;
+ background-color:#FFFFFF;
+}
+
+.group_box-alt {
+ font:normal 11px Arial;
+ color:#1E4F66;
+ width:100%;
+ background-color:#F5FAFA;
+}
+
+.table-header {
+ text-align:center;
+ border: 1px solid #cccbc6;
+ background-color: #e9e8e6;
+ color: #686663;
+ font: normal 10 Helvetica, Arial;
+}
+#mainContainer{
+ width:100%;
+ margin:0 auto;
+ text-align:left;
+ height:100%;
+ padding-bottom:30px;
+}
+
+.dragableBox{ /* The RSS box */
+ border-top: 1px solid #795089;
+ border-left: 1px solid #795089;
+ border-right: 1px solid #795089;
+ border-bottom: 1px solid #795089;
+ background-color:#FFFFFF;
+ margin:0px 0px 5px 0px;
+}
+
+#dragableBoxShadow {
+ background: url(/images/shadow2.png) no-repeat left top !important;
+ background: url(/images/shadow2.gif) no-repeat left top;
+ float: left;
+ padding: 0px 6px 6px 0px;
+}
+
+.dragableBoxHeader{ /* Header inside RSS box */
+ color:#FFFFFF;
+ background-image:url(images/titlebar.gif);
+ background-repeat: repeat-x;
+ height:20px;
+ font:bold 12 Helvetica, Arial;vertical-align:middle;
+ font-weight:bold;
+}
+.dragableBoxHeader span{ /* Text inside header of RSS box */
+ line-height:20px;
+}
+.dragableBoxHeader img,.dragableBoxHeader span{ /* Text and reload image inside RSS box */
+ float:left;
+}
+.boxItemHeader{ /* Title of items inside dragable boxes */
+ font-weight:bold;
+ margin:0px;
+ color:#000;
+ text-decoration:none;
+ overflow:hidden;
+}
+.boxItemHeader:hover{ /* Title of items inside dragable boxes - mouseover*/
+ font-weight:bold;
+ margin:0px;
+ color:#F00;
+ text-decoration:underline;
+}
+.dragableBoxHeader input{ /* text inputs that gets visible when you click on the "edit" link at the top of a rss box */
+ font-size:12px;
+}
+
+.rssNumberOfItems{ /* Number of RSS items in header - the one inside parantheses */
+ color:#F00;
+}
+.dragableBoxContent{ /* DIV holding data inside dragable boxes */
+ padding:3px;
+ clear:both;
+ font-size: 10px;
+}
+#rectangleDiv{ /* Dotted rectangle indicating where objects will be dropped */
+ border:1px dotted red;
+ margin:5px;
+}
+
+.closeButton{ /* Close button */
+ padding:2px;
+ border:1px solid #317082;
+ line-height:9px;
+ height:9px;
+ margin:2px;
+ color:#317082;
+ padding:2px;
+ padding-bottom:3px;
+}
+.closeButton_over{ /* Close button - mouse over */
+ padding:2px;
+ border:1px solid #317082;
+ line-height:9px;
+ padding:2px;
+ padding-bottom:3px;
+ margin:2px;
+ background-color:#317082;
+ color:#FFF;
+}
+.dragableBoxStatusBar{ /* Status bar at the bottom of rss boxes */
+ display:none;
+ height:14px;
+ background-color:#E2EBED;
+ font-size: 10px;
+ padding:2px;
+}
+
+.dragableBoxEdit {
+ font-size: 10px;
+ background-color:#eeeeee;
+}
+
+.dragableBoxEditLink{ /* Edit link on top of a box */
+ color:#317082;
+ text-decoration:none;
+ padding-top:1px;
+}
+.dragableBoxEditLink:hover{ /* Edit link - mouse over */
+ color:red;
+ text-decoration:underline;
+}
+form{ /* No borders in forms */
+ display:inline;
+}
+
+body#main_body, div#workspaceContainer {
+ height: 100%;
+}
+
+.tabcontent{
+ display:none;
+ background-color: #ffffff;
+}
+
+/***********************************************/
+div.portal_menu {background: rgb(255,255,240); border: 1px #000 dotted;}
+table.menu_table {font-size:x-small;}
+hr.separator {border:1px #000 solid; color: #c0c0c0; background-color: #c0c0c0;}
+
+div.rss_feed_div {
+ color:#002E40;
+ font:normal 11 Helvetica, Arial;
+ border-collapse: collapse;
+}
+
+div.portal_util_div table {font-size:11px;}
+
+.portal_table {
+ color:#002E40;
+ font:normal 11 Helvetica, Arial;
+ border-collapse: collapse;
+}
+
+.portal_table caption {
+ font-size : 11px;
+ font-weight: bold;
+ border-collapse: collapse;
+}
+
+.portal_table th {
+ color: #4a4a4a;
+ border: 1px solid #c0c0c0;
+ text-align: center;
+ background-color: #e9e8e6;
+}
+
+.portal_table td {
+ border-left: 1px solid #C1DAD7;
+ border-right: 1px solid #C1DAD7;
+ border-bottom: 1px solid #C1DAD7;
+ background: #fff;
+ color:#002E40;
+}
+
+
+.portal_table td.high {
+ background: red;
+ color: #797268;
+}
+
+.portal_table td.medium {
+ background: yellow;
+ color: #797268;
+}
+
+.portal_table td.alt {
+ background: #F5FAFA;
+ color: #797268;
+}
+
+.page_tab:focus {
+ -moz-outline: 0px solid #000000 !important;
+ -moz-outline-offset: 1px !important;
+ -moz-outline-radius: 5px !important;
+}
+
+.html_div {
+ padding: 5px 5px 5px 5px;
+}
+
+.notice_table {
+ background: #eeeeee;
+ padding: 1px;
+ width: 100%;
+}
+
+.notice_table thead {
+ background: #eeeeee;
+}
+
+.notice_table th {
+ font-weight:bold;
+}
+
+.notice_table_author {
+ font-weight:bold;
+ text-align:left;
+}
+
+.notice_table_time {
+ font-weight:bold;
+ text-align:right;
+}
+
+.notice_table td {
+ background: white;
+}
+
+.content {
+ background-color: #8faabb;
+}
+
+a {
+ text-decoration: none;
+ color: #000000;
+}
+
+#page_config_menu {
+ position: absolute;
+ background: white;
+ border: 1px solid #000000;
+ z-index: 10;
+}
+
+#manage_view {
+ overflow: auto;
+ background: #eeeeee;
+ z-index: 10;
+}
+
+#widget_view {
+ overflow: auto;
+ background: #eeeeee;
+ z-index: 10;
+}
+
+.portal_top_nav_bar { /* Header inside RSS box */
+ color:#1E4F66;
+ font:bold 10 Helvetica, Arial;vertical-align:middle;
+ font-weight:bold;
+ color: #002e30;
+}
+
+.clear_table, .widget {
+ font:normal 11 Helvetica, Arial;
+ color:#002E40;
+ border-collapse: collapse;
+}
+
+.simple_table {
+ font:normal 11 Helvetica, Arial;
+ border: 1px solid #c0c0c0;
+ border-collapse: collapse;
+ padding: 1px;
+}
+
+.simple_table td {
+ text-decoration:none;
+ height: 16px;
+ font:normal 11 Helvetica, Arial;
+ border-top: none;
+ border-left: none;
+ border-right: none;
+ border-bottom: none;
+ color:#002E40;
+}
+
+.simple_table th {
+ color: #4a4a4a;
+ border: 1px solid #c0c0c0;
+ text-align: center;
+ background-color: #e9e8e6;
+}
+
+.simple_table caption {
+ font-size : 11px;
+ font-weight: bold;
+ border-collapse: collapse;
+}
+
+.highlight {
+ background-color:#88ceff;
+}
+
+.page_selector_table {
+border-bottom: 1px solid #cccccc;
+margin: 0;
+}
+
+
+table.titlebar {font:bold 11px Arial;color:#FFFFFF;vertical-align:middle;border-width:1px;height:14px;border:1px solid #000;background-image:url(images/titlebar.gif);background-repeat:repeat-x;background-color:#7B0099;}
+
+table.simple {
+ border-width: 1px;
+ border-style: solid;
+ border-color: #E1D8E5;
+ border-collapse: collapse;
+ font: normal 11px Arial; color:#000000;
+ background-color: #ffffff;
+}
+table.simple th {
+ border-width: 1px;
+ padding: 2px;
+ border-style: inset;
+ border-color: #E1D8E5;
+ background-color: #E1D8E5;
+ font: bold 11px Arial; color:#000000;
+ -moz-border-radius: ;
+}
+table.simple td {
+ text-decoration: none;
+ border-width: 1px;
+ padding: 2px;
+ border-style: inset;
+ border-color: #E1D8E5;
+ -moz-border-radius: ;
+}
+
+thead.fixedHead {
+ width:100%;
+ display:block;
+ background-color: #E1D8E5;
+}
+
+thead.fixedHead th {
+ width:5%;
+}
+
+thead.fixedHead th + th {
+ width:95%;
+}
+
+tbody.scrollContent {
+ height: 262px;
+ overflow: auto;
+ display:block;
+ width:100%;
+}
+
+div.shadow {
+ display:block;
+ position:absolute;
+ top:0;
+ left:0;
+ width:100%;
+ height:100%;
+ float:left;
+ background-color:#000000;
+ filter:alpha(opacity=25);
+ opacity:.25;
+ -moz-opacity:.25;
+ z-index:11;
+}
+
+*.carpe_horizontal_slider_display_combo {
+ clear: left;
+ margin: 0;
+}
+*.carpe_vertical_slider_display_combo {
+ float: left;
+ margin: 0;
+}
+*.carpe_horizontal_slider_track {
+ background-color: #bbb;
+ color: #333;
+ width: 120px;
+ float: left;
+ margin: 0;
+ line-height: 0px;
+ font-size: 0px;
+ text-align: left;
+ padding: 4px;
+ border: 1px solid;
+ border-color: #ddd #999 #999 #ddd;
+}
+*.carpe_vertical_slider_track {
+ background-color: #bbb;
+ color: #333;
+ padding: 3px 6px 15px 6px;
+ width: 24px;
+ height: 100px;
+ border: 1px solid;
+ border-color: #ddd #999 #999 #ddd;
+}
+*.carpe_horizontal_slider_track *.carpe_slider_slit {
+ background-color: #333;
+ color: #ccc;
+ width: 110px;
+ height: 2px;
+ margin: 4px 4px 2px 4px;
+ line-height: 0px;
+ position: absolute;
+ z-index: 1;
+ border: 1px solid;
+ border-color: #999 #ddd #ddd #999;
+}
+*.carpe_vertical_slider_track *.carpe_slider_slit {
+ background-color: #000;
+ color: #333;
+ width: 2px;
+ height: 100px;
+ position: absolute;
+ margin: 4px 10px 4px 10px;
+ padding: 4px 0 1px 0;
+ line-height: 0px;
+ font-size: 0;
+ border: 1px solid;
+ border-color: #666 #ccc #ccc #666;
+}
+*.carpe_horizontal_slider_track *.carpe_slider {
+ width: 16px;
+ background-color: #666;
+ color: #333;
+ position: relative;
+ margin: 0;
+ height: 8px;
+ z-index: 1;
+ line-height: 0px;
+ font-size: 0px;
+ text-align: left;
+ border: 2px solid;
+ border-color: #999 #333 #333 #999;
+}
+*.carpe_vertical_slider_track *.carpe_slider {
+ width: 20px;
+ background-color: #666;
+ color: #333;
+ position: relative;
+ margin: 0;
+ height: 8px;
+ z-index: 1;
+ line-height: 0px;
+ font-size: 0px;
+ text-align: left;
+ border: 2px solid;
+ border-color: #999 #333 #333 #999;
+}
+*.carpe_slider_display_holder {
+ background-color: #bbb;
+ color: #333;
+ width: 34px;
+ margin: 0;
+ float: left;
+ padding: 0 2px 0 0;
+ height: 20px;
+ text-align: right;
+ border: 1px solid;
+ border-color: #ddd #999 #999 #ddd;
+}
+.carpe_slider_display {
+ background-color: #bbb;
+ color: #333;
+ padding: 3px 1px 0 0;
+ width: 30px;
+ text-align: right;
+ font-size: 11px;
+ line-height: 10px;
+ font-family: verdana, arial, helvetica, sans-serif;
+ font-weight: bold;
+ border: 0;
+ cursor: default;
+}
+
+body > .panel {
+ padding: 10px;
+}
+
+.panel > fieldset {
+ position: relative;
+ margin: 0 0 20px 0;
+ padding: 0;
+ border: 0;
+ background: #FFFFFF;
+}
+
+.row {
+ position: relative;
+}
+
+fieldset > .row:last-child {
+}
+
+.row > select {
+}
+
+.row > input {
+}
+
+.row > label {
+ margin: 0 0 0 14px;
+ line-height: 12px;
+}
+
+.row > .toggle {
+ position: absolute;
+ top: 6px;
+ right: 6px;
+ width: 100px;
+ height: 28px;
+}
+
+.toggle {
+ border: 1px solid #888888;
+ -webkit-border-radius: 6px;
+ background: #FFFFFF url(../images/toggle.png) repeat-x;
+ font-size: 19px;
+ font-weight: bold;
+ line-height: 30px;
+}
+
+.toggle[toggled="true"] {
+ border: 1px solid #143fae;
+ background: #194fdb url(../images/toggleOn.png) repeat-x;
+}
+
+.toggleOn {
+ display: none;
+ position: absolute;
+ width: 60px;
+ text-align: center;
+ left: 0;
+ top: 0;
+ color: #FFFFFF;
+ text-shadow: rgba(0, 0, 0, 0.4) 0px -1px 0;
+}
+
+.toggleOff {
+ position: absolute;
+ width: 60px;
+ text-align: center;
+ right: 0;
+ top: 0;
+ color: #666666;
+}
+
+.toggle[toggled="true"] > .toggleOn {
+ display: block;
+}
+
+.toggle[toggled="true"] > .toggleOff {
+ display: none;
+}
+
+.thumb {
+ position: absolute;
+ top: -1px;
+ left: -1px;
+ width: 40px;
+ height: 28px;
+ border: 1px solid #888888;
+ -webkit-border-radius: 6px;
+ background: #ffffff url(../images/thumb.png) repeat-x;
+}
+
+.toggle[toggled="true"] > .thumb {
+ left: auto;
+ right: -1px;
+}
+
+.panel > h2 {
+ color:#002E40;
+ font-family:Helvetica,Arial;
+ font-size:11px;
+ font-size-adjust:none;
+ font-style:normal;
+ font-variant:normal;
+ font-weight:normal;
+ line-height:normal;
+}
+
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/flexigrid/flexigrid.css
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/flexigrid/flexigrid.css?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/flexigrid/flexigrid.css (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/flexigrid/flexigrid.css Fri Dec 5 12:30:14 2008
@@ -0,0 +1,729 @@
+@charset "UTF-8";
+/* CSS Document */
+
+.flexigrid
+ {
+ font-family: Arial, Helvetica, sans-serif;
+ font-size: 11px;
+ position: relative;
+ border: 0px solid #eee;
+ overflow: hidden;
+ color: #000;
+ }
+
+ .flexigrid.hideBody
+ {
+ height: 26px !important;
+ border-bottom: 1px solid #ccc;
+ }
+
+ .ie6fullwidthbug
+ {
+ border-right: 0px solid #ccc;
+ padding-right: 2px;
+ }
+
+.flexigrid div.nDiv
+ {
+ background: #eee url(images/line.gif) repeat-y -1px top;
+ border: 1px solid #ccc;
+ border-top: 0px;
+ overflow: auto;
+ left: 0px;
+ position: absolute;
+ z-index: 999;
+ float: left;
+ }
+
+ .flexigrid div.nDiv table
+ {
+ margin: 2px;
+ }
+
+.flexigrid div.hDivBox
+ {
+ float: left;
+ padding-right: 40px;
+ }
+
+.flexigrid div.bDiv table
+ {
+ margin-bottom: 10px;
+ }
+
+ .flexigrid div.bDiv table.autoht
+ {
+ border-bottom: 0px;
+ margin-bottom: 0px;
+ }
+
+.flexigrid div.nDiv td
+ {
+ padding: 2px 3px;
+ border: 1px solid #eee;
+ cursor: default;
+ }
+
+.flexigrid div.nDiv tr:hover td, .flexigrid div.nDiv tr.ndcolover td
+ {
+ background: #d5effc url(images/hl.png) repeat-x top;
+ border: 1px solid #a8d8eb;
+ }
+
+ .flexigrid div.nDiv td.ndcol1
+ {
+ border-right: 1px solid #ccc;
+ }
+
+ .flexigrid div.nDiv td.ndcol2
+ {
+ border-left: 1px solid #fff;
+ padding-right: 10px;
+ }
+
+ .flexigrid div.nDiv tr:hover td.ndcol1, .flexigrid div.nDiv tr.ndcolover td.ndcol1
+ {
+ border-right: 1px solid #d2e3ec;
+ }
+
+ .flexigrid div.nDiv tr:hover td.ndcol2, .flexigrid div.nDiv tr.ndcolover td.ndcol2
+ {
+ border-left: 1px solid #eef8ff;
+ }
+
+ .flexigrid div.nBtn
+ {
+ position: absolute;
+ height: 24px;
+ width: 14px;
+ z-index: 900;
+ background: #fafafa url(images/fhbg.gif) repeat-x bottom;
+ border: 0px solid #ccc;
+ border-left: 1px solid #ccc;
+ top: 0px;
+ left: 0px;
+ margin-top: 1px;
+ cursor: pointer;
+ display: none;
+ }
+
+ .flexigrid div.nBtn div
+ {
+ height: 24px;
+ width: 12px;
+ border-left: 1px solid #fff;
+ float: left;
+ background: url(images/ddn.png) no-repeat center;
+ }
+
+ .flexigrid div.nBtn.srtd
+ {
+ background: url(images/wbg.gif) repeat-x 0px -1px;
+ }
+
+
+.flexigrid div.mDiv
+ {
+ background: url(images/wbg.gif) repeat-x top;
+ border: 1px solid #ccc;
+ border-bottom: 0px;
+ border-top: 0px;
+ font-weight: bold;
+ display: block;
+ overflow: hidden;
+ white-space: nowrap;
+ position: relative;
+ }
+
+.flexigrid div.mDiv div
+ {
+ padding: 6px;
+ white-space: nowrap;
+ }
+
+ .flexigrid div.mDiv div.ptogtitle
+ {
+ position: absolute;
+ top: 4px;
+ right: 3px;
+ padding: 0px;
+ height: 16px;
+ width: 16px;
+ overflow: hidden;
+ border: 1px solid #ccc;
+ cursor: pointer;
+ }
+
+ .flexigrid div.mDiv div.ptogtitle:hover
+ {
+ background-position: left -2px;
+ border-color: #bbb;
+ }
+
+ .flexigrid div.mDiv div.ptogtitle span
+ {
+ display: block;
+ border-left: 1px solid #eee;
+ border-top: 1px solid #fff;
+ border-bottom: 1px solid #ddd;
+ width: 14px;
+ height: 14px;
+ background: url(images/uup.png) no-repeat center;
+ }
+
+ .flexigrid div.mDiv div.ptogtitle.vsble span
+ {
+ background: url(images/ddn.png) no-repeat center;
+ }
+
+.flexigrid div.tDiv /*toolbar*/
+ {
+ background: #fafafa url(images/bg.gif) repeat-x top;
+ position: relative;
+ border: 1px solid #ccc;
+ border-bottom: 0px;
+ overflow: hidden;
+ }
+
+ .flexigrid div.tDiv2
+ {
+ float: left;
+ clear: both;
+ padding: 1px;
+ }
+
+.flexigrid div.sDiv /*toolbar*/
+ {
+ background: #fafafa url(images/bg.gif) repeat-x top;
+ position: relative;
+ border: 1px solid #ccc;
+ border-top: 0px;
+ overflow: hidden;
+ display: none;
+ }
+
+ .flexigrid div.sDiv2
+ {
+ float: left;
+ clear: both;
+ padding: 5px;
+ padding-left: 5px;
+ width: 1024px;
+ }
+
+ .flexigrid div.sDiv2 input, .flexigrid div.sDiv2 select
+ {
+ vertical-align: middle;
+ }
+
+ .flexigrid div.btnseparator
+ {
+ float: left;
+ height: 22px;
+ border-left: 1px solid #ccc;
+ border-right: 1px solid #fff;
+ margin: 1px;
+ }
+
+ .flexigrid div.fbutton
+ {
+ float: left;
+ display: block;
+ cursor: pointer;
+ padding: 1px;
+ }
+
+ .flexigrid div.fbutton div
+ {
+ float: left;
+ padding: 1px 3px;
+ }
+
+ .flexigrid div.fbutton span
+ {
+ float: left;
+ display: block;
+ padding: 3px;
+ }
+
+ .flexigrid div.fbutton:hover, .flexigrid div.fbutton.fbOver
+ {
+ padding: 0px;
+ border: 1px solid #ccc;
+ }
+
+ .flexigrid div.fbutton:hover div, .flexigrid div.fbutton.fbOver div
+ {
+ padding: 0px 2px;
+ border-left: 1px solid #fff;
+ border-top: 1px solid #fff;
+ border-right: 1px solid #eee;
+ border-bottom: 1px solid #eee;
+ }
+
+
+/* end toolbar*/
+
+.flexigrid div.hDiv
+ {
+ background: #fafafa url(images/fhbg.gif) repeat-x bottom;
+ position: relative;
+ border: 1px solid #ccc;
+ border-bottom: 0px;
+ overflow: hidden;
+ }
+
+.flexigrid div.hDiv table
+ {
+ border-right: 1px solid #fff;
+ }
+
+ .flexigrid div.cDrag
+ {
+ float: left;
+ position: absolute;
+ z-index: 2;
+ overflow: visible;
+ }
+
+ .flexigrid div.cDrag div
+ {
+ float: left;
+ background: none;
+ display: block;
+ position: absolute;
+ height: 24px;
+ width: 5px;
+ cursor: col-resize;
+ }
+
+ .flexigrid div.cDrag div:hover, .flexigrid div.cDrag div.dragging
+ {
+ background: url(images/line.gif) repeat-y 2px center;
+ }
+
+.flexigrid div.iDiv
+ {
+ border: 1px solid #316ac5;
+ position: absolute;
+ overflow: visible;
+ background: none;
+ }
+
+ .flexigrid div.iDiv input, .flexigrid div.iDiv select, .flexigrid div.iDiv textarea
+ {
+ font-family: Arial, Helvetica, sans-serif;
+ font-size: 11px;
+ }
+
+ .flexigrid div.iDiv input.tb
+ {
+ border: 0px;
+ padding: 0px;
+ width: 100%;
+ height: 100%;
+ padding: 0px;
+ background: none;
+ }
+
+.flexigrid div.bDiv
+ {
+ border: 1px solid #ccc;
+ border-top: 0px;
+ background: #fff;
+ overflow: auto;
+ position: relative;
+ }
+
+.flexigrid div.bDiv table
+ {
+ border-bottom: 1px solid #ccc;
+ }
+
+ .flexigrid div.hGrip
+ {
+ position: absolute;
+ top: 0px;
+ right: 0px;
+ height: 5px;
+ width: 5px;
+ background: url(images/line.gif) repeat-x center;
+ margin-right: 1px;
+ cursor: col-resize;
+ }
+
+ .flexigrid div.hGrip:hover, .flexigrid div.hGrip.hgOver
+ {
+ border-right: 1px solid #999;
+ margin-right: 0px;
+ }
+
+ .flexigrid div.vGrip
+ {
+ height: 5px;
+ overflow: hidden;
+ position: relative;
+ background: #fafafa url(images/wbg.gif) repeat-x 0px -1px;
+ border: 1px solid #ccc;
+ border-top: 0px;
+ text-align: center;
+ cursor: row-resize;
+ }
+
+ .flexigrid div.vGrip span
+ {
+ display: block;
+ margin: 1px auto;
+ width: 20px;
+ height: 1px;
+ overflow: hidden;
+ border-top: 1px solid #aaa;
+ border-bottom: 1px solid #aaa;
+ background: none;
+ }
+
+.flexigrid div.hDiv th, .flexigrid div.bDiv td /* common cell properties*/
+ {
+ text-align: left;
+ border-right: 1px solid #ddd;
+ border-left: 1px solid #fff;
+ overflow: hidden;
+ }
+
+ .flexigrid div.hDiv th div, .flexigrid div.bDiv td div, div.colCopy div/* common inner cell properties*/
+ {
+ padding: 5px;
+ border-left: 0px solid #fff;
+ }
+
+.flexigrid div.hDiv th, div.colCopy
+ {
+ font-weight: normal;
+ height: 24px;
+ cursor: default;
+ white-space: nowrap;
+ overflow: hidden;
+ }
+
+div.colCopy {
+ font-family: Arial, Helvetica, sans-serif;
+ font-size: 11px;
+ background: #fafafa url(images/fhbg.gif) repeat-x bottom;
+ border: 1px solid #ccc;
+ border-bottom: 0px;
+ overflow: hidden;
+ }
+
+.flexigrid div.hDiv th.sorted
+ {
+ background: url(images/wbg.gif) repeat-x 0px -1px;
+ border-bottom: 0px solid #ccc;
+ }
+
+ .flexigrid div.hDiv th.thOver
+ {
+ }
+
+ .flexigrid div.hDiv th.thOver div, .flexigrid div.hDiv th.sorted.thOver div
+ {
+ border-bottom: 1px solid orange;
+ padding-bottom: 4px;
+ }
+
+ .flexigrid div.hDiv th.sorted div
+ {
+ border-bottom: 0px solid #ccc;
+ padding-bottom: 5px;
+ }
+
+ .flexigrid div.hDiv th.thMove
+ {
+ background: #fff;
+ color: #fff;
+ }
+
+ .flexigrid div.hDiv th.sorted.thMove div
+ {
+ border-bottom: 1px solid #fff;
+ padding-bottom: 4px
+ }
+
+ .flexigrid div.hDiv th.thMove div
+ {
+ background: #fff !important;
+ }
+
+ .flexigrid div.hDiv th div.sdesc
+ {
+ background: url(images/dn.png) no-repeat center top;
+ }
+
+ .flexigrid div.hDiv th div.sasc
+ {
+ background: url(images/up.png) no-repeat center top;
+ }
+
+.flexigrid div.bDiv td
+ {
+ border-bottom: 1px solid #fff;
+ vertical-align: top;
+ white-space: nowrap;
+ }
+
+ .flexigrid div.hDiv th div
+ {
+ }
+
+ .flexigrid span.cdropleft
+ {
+ display: block;
+ background: url(images/prev.gif) no-repeat -4px center;
+ width: 24px;
+ height: 24px;
+ position: relative;
+ top: -24px;
+ margin-bottom: -24px;
+ z-index: 3;
+ }
+
+ .flexigrid div.hDiv span.cdropright
+ {
+ display: block;
+ background: url(images/next.gif) no-repeat 12px center;
+ width: 24px;
+ height: 24px;
+ float: right;
+ position: relative;
+ top: -24px;
+ margin-bottom: -24px;
+ }
+
+
+ .flexigrid div.bDiv td div
+ {
+ border-top: 0px solid #fff;
+ padding-bottom: 4px;
+ }
+
+
+ .flexigrid tr td.sorted
+ {
+ background: #f3f3f3;
+ border-right: 1px solid #ddd;
+ border-bottom: 1px solid #f3f3f3;
+ }
+
+ .flexigrid tr td.sorted div
+ {
+ }
+
+
+ .flexigrid tr.erow td
+ {
+ background: #f7f7f7;
+ border-bottom: 1px solid #f7f7f7;
+ }
+
+ .flexigrid tr.erow td.sorted
+ {
+ background: #e3e3e3;
+ border-bottom: 1px solid #e3e3e3;
+ }
+
+ .flexigrid tr.erow td.sorted div
+ {
+ }
+
+ .flexigrid div.bDiv tr:hover td,
+ .flexigrid div.bDiv tr:hover td.sorted,
+ .flexigrid div.bDiv tr.trOver td.sorted,
+ .flexigrid div.bDiv tr.trOver td
+ {
+ background: #d9ebf5;
+ border-left: 1px solid #eef8ff;
+ border-bottom: 1px dotted #a8d8eb;
+ }
+
+ .flexigrid div.bDiv tr.trSelected:hover td,
+ .flexigrid div.bDiv tr.trSelected:hover td.sorted,
+ .flexigrid div.bDiv tr.trOver.trSelected td.sorted,
+ .flexigrid div.bDiv tr.trOver.trSelected td,
+ .flexigrid tr.trSelected td.sorted,
+ .flexigrid tr.trSelected td
+ {
+ background: #d5effc url(images/hl.png) repeat-x top;
+ border-right: 1px solid #d2e3ec;
+ border-left: 1px solid #eef8ff;
+ border-bottom: 1px solid #a8d8eb;
+ }
+
+ .flexigrid tr.trSelected td.sorted a,
+ .flexigrid tr.trSelected td a
+ {
+ color: #eee;
+ }
+
+ /* novstripe adjustments */
+
+ .flexigrid.novstripe .bDiv table
+ {
+ border-bottom: 1px solid #ccc;
+ border-right: 1px solid #ccc;
+ }
+
+ .flexigrid.novstripe div.bDiv td
+ {
+ border-right-color: #fff;
+ }
+
+ .flexigrid.novstripe div.bDiv tr.erow td.sorted
+ {
+ border-right-color: #e3e3e3;
+ }
+
+ .flexigrid.novstripe div.bDiv tr td.sorted
+ {
+ border-right-color: #f3f3f3;
+ }
+
+ .flexigrid.novstripe div.bDiv tr.erow td
+ {
+ border-right-color: #f7f7f7;
+ border-left-color: #f7f7f7;
+ }
+
+ .flexigrid.novstripe div.bDiv tr.trSelected:hover td,
+ .flexigrid.novstripe div.bDiv tr.trSelected:hover td.sorted,
+ .flexigrid.novstripe div.bDiv tr.trOver.trSelected td.sorted,
+ .flexigrid.novstripe div.bDiv tr.trOver.trSelected td,
+ .flexigrid.novstripe tr.trSelected td.sorted,
+ .flexigrid.novstripe tr.trSelected td
+ {
+ border-right: 1px solid #0066FF;
+ border-left: 1px solid #0066FF;
+ }
+
+ .flexigrid.novstripe div.bDiv tr.trOver td, .flexigrid.novstripe div.bDiv tr:hover td
+ {
+ border-left-color: #d9ebf5;
+ border-right-color: #d9ebf5;
+ }
+
+ /* end novstripe */
+
+.flexigrid div.pDiv
+ {
+ background: url(images/wbg.gif) repeat-x 0 -1px;
+ border: 1px solid #ccc;
+ border-top: 0px;
+ overflow: hidden;
+ white-space: nowrap;
+ }
+
+.flexigrid div.pDiv div.pDiv2
+ {
+ margin: 3px;
+ margin-left: -2px;
+ float: left;
+ width: 1024px;
+ }
+
+ div.pGroup
+ {
+ float: left;
+ background: none;
+ height: 24px;
+ margin: 0px 5px;
+ }
+
+ .flexigrid div.pDiv .pPageStat, .flexigrid div.pDiv .pcontrol
+ {
+ position: relative;
+ top: 5px;
+ overflow: visible;
+ }
+
+ .flexigrid div.pDiv input
+ {
+ vertical-align: text-top;
+ position: relative;
+ top: -5px;
+ }
+
+ .flexigrid div.pDiv div.pButton
+ {
+ float: left;
+ width: 22px;
+ height: 22px;
+ border: 0px;
+ cursor: pointer;
+ overflow: hidden;
+ }
+
+ .flexigrid div.pDiv div.pButton:hover, .flexigrid div.pDiv div.pButton.pBtnOver
+ {
+ width: 20px;
+ height: 20px;
+ border: 1px solid #ccc;
+ cursor: pointer;
+ }
+
+ .flexigrid div.pDiv div.pButton span
+ {
+ width: 20px;
+ height: 20px;
+ display: block;
+ float: left;
+ }
+
+ .flexigrid div.pDiv div.pButton:hover span, .flexigrid div.pDiv div.pButton.pBtnOver span
+ {
+ width: 19px;
+ height: 19px;
+ border-top: 1px solid #fff;
+ border-left: 1px solid #fff;
+ }
+
+
+ .flexigrid .pSearch
+ {
+ background: url(images/magnifier.png) no-repeat center;
+ }
+
+ .flexigrid .pFirst
+ {
+ background: url(images/first.gif) no-repeat center;
+ }
+
+ .flexigrid .pPrev
+ {
+ background: url(images/prev.gif) no-repeat center;
+ }
+
+ .flexigrid .pNext
+ {
+ background: url(images/next.gif) no-repeat center;
+ }
+
+ .flexigrid .pLast
+ {
+ background: url(images/last.gif) no-repeat center;
+ }
+
+ .flexigrid .pReload
+ {
+ background: url(images/load.png) no-repeat center;
+ }
+
+ .flexigrid .pReload.loading
+ {
+ background: url(images/load.gif) no-repeat center;
+ }
+
+/* ie adjustments */
+
+ .flexigrid.ie div.hDiv th div, .flexigrid.ie div.bDiv td div, div.colCopy.ie div/* common inner cell properties*/
+ {
+ overflow: hidden;
+ }
+
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/iui.css
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/iui.css?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/iui.css (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/iui.css Fri Dec 5 12:30:14 2008
@@ -0,0 +1,385 @@
+/* iui.css (c) 2007 by iUI Project Members, see LICENSE.txt for license */
+body {
+ margin: 0;
+ font-family: Helvetica;
+ background: #FFFFFF;
+ color: #000000;
+ overflow-x: hidden;
+ -webkit-user-select: none;
+ -webkit-text-size-adjust: none;
+}
+
+body > *:not(.toolbar) {
+ display: none;
+ position: absolute;
+ margin: 0;
+ padding: 0;
+ left: 0;
+ top: 45px;
+ width: 100%;
+ min-height: 372px;
+}
+
+body[orient="landscape"] > *:not(.toolbar) {
+ min-height: 268px;
+}
+
+body > *[selected="true"] {
+ display: block;
+}
+
+a[selected], a:active {
+ background-color: #194fdb !important;
+ background-image: url(../images/listArrowSel.png), url(../images/selection.png) !important;
+ background-repeat: no-repeat, repeat-x;
+ background-position: right center, left top;
+ color: #FFFFFF !important;
+}
+
+a[selected="progress"] {
+ background-image: url(../images/loading.gif), url(../images/selection.png) !important;
+}
+
+/************************************************************************************************/
+
+body > .toolbar {
+ box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ border-bottom: 1px solid #2d3642;
+ border-top: 1px solid #6d84a2;
+ padding: 10px;
+ height: 45px;
+ background: url(../images/toolbar.png) #6d84a2 repeat-x;
+}
+
+.toolbar > h1 {
+ position: absolute;
+ overflow: hidden;
+ left: 50%;
+ margin: 1px 0 0 -75px;
+ height: 45px;
+ font-size: 20px;
+ width: 150px;
+ font-weight: bold;
+ text-shadow: rgba(0, 0, 0, 0.4) 0px -1px 0;
+ text-align: center;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ color: #FFFFFF;
+}
+
+body[orient="landscape"] > .toolbar > h1 {
+ margin-left: -125px;
+ width: 250px;
+}
+
+.button {
+ position: absolute;
+ overflow: hidden;
+ top: 8px;
+ right: 6px;
+ margin: 0;
+ border-width: 0 5px;
+ padding: 0 3px;
+ width: auto;
+ height: 30px;
+ line-height: 30px;
+ font-family: inherit;
+ font-size: 12px;
+ font-weight: bold;
+ color: #FFFFFF;
+ text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0;
+ text-overflow: ellipsis;
+ text-decoration: none;
+ white-space: nowrap;
+ background: none;
+ -webkit-border-image: url(../images/toolButton.png) 0 5 0 5;
+}
+
+.blueButton {
+ -webkit-border-image: url(../images/blueButton.png) 0 5 0 5;
+ border-width: 0 5px;
+}
+
+.leftButton {
+ left: 6px;
+ right: auto;
+}
+
+#backButton {
+ display: none;
+ left: 6px;
+ right: auto;
+ padding: 0;
+ max-width: 55px;
+ border-width: 0 8px 0 14px;
+ -webkit-border-image: url(../images/backButton.png) 0 8 0 14;
+}
+
+.whiteButton,
+.grayButton {
+ display: block;
+ border-width: 0 12px;
+ padding: 10px;
+ text-align: center;
+ font-size: 20px;
+ font-weight: bold;
+ text-decoration: inherit;
+ color: inherit;
+}
+
+.whiteButton {
+ -webkit-border-image: url(../images/whiteButton.png) 0 12 0 12;
+ text-shadow: rgba(255, 255, 255, 0.7) 0 1px 0;
+}
+
+.grayButton {
+ -webkit-border-image: url(../images/grayButton.png) 0 12 0 12;
+ color: #FFFFFF;
+}
+
+/************************************************************************************************/
+
+body > ul > li {
+ position: relative;
+ margin: 0;
+ border-bottom: 1px solid #E0E0E0;
+ padding: 8px 0 8px 10px;
+ font-size: 20px;
+ font-weight: bold;
+ list-style: none;
+}
+
+body > ul > li.group {
+ position: relative;
+ top: -1px;
+ margin-bottom: -2px;
+ border-top: 1px solid #7d7d7d;
+ border-bottom: 1px solid #999999;
+ padding: 1px 10px;
+ background: url(../images/listGroup.png) repeat-x;
+ font-size: 17px;
+ font-weight: bold;
+ text-shadow: rgba(0, 0, 0, 0.4) 0 1px 0;
+ color: #FFFFFF;
+}
+
+body > ul > li.group:first-child {
+ top: 0;
+ border-top: none;
+}
+
+body > ul > li > a {
+ display: block;
+ margin: -8px 0 -8px -10px;
+ padding: 8px 32px 8px 10px;
+ text-decoration: none;
+ color: inherit;
+ background: url(../images/listArrow.png) no-repeat right center;
+}
+
+a[target="_replace"] {
+ box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ padding-top: 25px;
+ padding-bottom: 25px;
+ font-size: 18px;
+ color: cornflowerblue;
+ background-color: #FFFFFF;
+ background-image: none;
+}
+
+/************************************************************************************************/
+
+body > .dialog {
+ top: 0;
+ width: 100%;
+ min-height: 417px;
+ z-index: 2;
+ background: rgba(0, 0, 0, 0.8);
+ padding: 0;
+ text-align: right;
+}
+
+.dialog > fieldset {
+ box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ width: 100%;
+ margin: 0;
+ border: none;
+ border-top: 1px solid #6d84a2;
+ padding: 10px 6px;
+ background: url(../images/toolbar.png) #7388a5 repeat-x;
+}
+
+.dialog > fieldset > h1 {
+ margin: 0 10px 0 10px;
+ padding: 0;
+ font-size: 20px;
+ font-weight: bold;
+ color: #FFFFFF;
+ text-shadow: rgba(0, 0, 0, 0.4) 0px -1px 0;
+ text-align: center;
+}
+
+.dialog > fieldset > label {
+ position: absolute;
+ margin: 16px 0 0 6px;
+ font-size: 14px;
+ color: #999999;
+}
+
+input {
+ box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ width: 100%;
+ margin: 8px 0 0 0;
+ padding: 6px 6px 6px 44px;
+ font-size: 16px;
+ font-weight: normal;
+}
+
+/************************************************************************************************/
+
+body > .panel {
+ box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ padding: 10px;
+ background: #c8c8c8 url(../images/pinstripes.png);
+}
+
+.panel > fieldset {
+ position: relative;
+ margin: 0 0 20px 0;
+ padding: 0;
+ background: #FFFFFF;
+ -webkit-border-radius: 10px;
+ border: 1px solid #999999;
+ text-align: right;
+ font-size: 16px;
+}
+
+.row {
+ position: relative;
+ min-height: 42px;
+ border-bottom: 1px solid #999999;
+ -webkit-border-radius: 0;
+ text-align: right;
+}
+
+fieldset > .row:last-child {
+ border-bottom: none !important;
+}
+
+.row > select {
+ background:#FFFFFF none repeat scroll 0% 0%;
+ border:medium none;
+ color:#000000;
+ font-size:16px;
+ height:42px;
+ margin:0pt;
+ padding:12px 10px 0pt 0px;
+}
+
+.row > input {
+ box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ margin: 0;
+ border: none;
+ padding: 12px 10px 0 110px;
+ height: 42px;
+ background: none;
+}
+
+.row > label {
+ position: absolute;
+ margin: 0 0 0 14px;
+ line-height: 42px;
+ font-weight: bold;
+}
+
+.row > .toggle {
+ position: absolute;
+ top: 6px;
+ right: 6px;
+ width: 100px;
+ height: 28px;
+}
+
+.toggle {
+ border: 1px solid #888888;
+ -webkit-border-radius: 6px;
+ background: #FFFFFF url(../images/toggle.png) repeat-x;
+ font-size: 19px;
+ font-weight: bold;
+ line-height: 30px;
+}
+
+.toggle[toggled="true"] {
+ border: 1px solid #143fae;
+ background: #194fdb url(../images/toggleOn.png) repeat-x;
+}
+
+.toggleOn {
+ display: none;
+ position: absolute;
+ width: 60px;
+ text-align: center;
+ left: 0;
+ top: 0;
+ color: #FFFFFF;
+ text-shadow: rgba(0, 0, 0, 0.4) 0px -1px 0;
+}
+
+.toggleOff {
+ position: absolute;
+ width: 60px;
+ text-align: center;
+ right: 0;
+ top: 0;
+ color: #666666;
+}
+
+.toggle[toggled="true"] > .toggleOn {
+ display: block;
+}
+
+.toggle[toggled="true"] > .toggleOff {
+ display: none;
+}
+
+.thumb {
+ position: absolute;
+ top: -1px;
+ left: -1px;
+ width: 40px;
+ height: 28px;
+ border: 1px solid #888888;
+ -webkit-border-radius: 6px;
+ background: #ffffff url(../images/thumb.png) repeat-x;
+}
+
+.toggle[toggled="true"] > .thumb {
+ left: auto;
+ right: -1px;
+}
+
+.panel > h2 {
+ margin: 0 0 8px 14px;
+ font-size: inherit;
+ font-weight: bold;
+ color: #4d4d70;
+ text-shadow: rgba(255, 255, 255, 0.75) 2px 2px 0;
+}
+
+/************************************************************************************************/
+
+#preloader {
+ display: none;
+ background-image: url(../images/loading.gif), url(../images/selection.png),
+ url(../images/blueButton.png), url(../images/listArrowSel.png), url(../images/listGroup.png);
+}
+
+.formButton {
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/menu.css
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/menu.css?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/menu.css (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/menu.css Fri Dec 5 12:30:14 2008
@@ -0,0 +1,84 @@
+.menubar {
+background-repeat: repeat-x;
+background-image: url('images/titlebar.gif');
+}
+
+#menu {
+color: #fff;
+font: bold 11px/16px arial, helvetica, sans-serif;
+width: 100%;
+float: left;
+background-repeat: repeat-x;
+background-image: url('images/titlebar.gif');
+}
+
+#menu ul {
+list-style: none;
+margin: 0;
+padding: 0;
+float: left;
+}
+
+#menu a, #menu span, #menu h2 {
+}
+
+#menu h2 {
+color: #fff;
+background: #000;
+text-transform: uppercase;
+}
+
+#menu a {
+color: #fff;
+text-decoration: none;
+display: block;
+border-width: 0px;
+margin: 0;
+padding: 2px 3px;
+}
+
+#menu a:hover {
+background: #9970A8;
+}
+
+#menu ul:hover {
+background: #9970A8;
+}
+
+#menu li {position: relative;}
+
+#menu ul ul {
+position: absolute;
+width: 12em;
+z-index: 500;
+}
+
+#menu ul ul ul {
+position: absolute;
+top: 0;
+left: 100%;
+}
+
+div#menu ul ul,
+div#menu ul li:hover ul ul,
+div#menu ul ul li:hover ul ul
+{display: none;}
+
+div#menu ul li:hover ul,
+div#menu ul ul li:hover ul,
+div#menu ul ul ul li:hover ul
+{display: block;}
+
+div#menu ul ul table {
+width:100%;
+color: #fff;
+font: bold 11px/16px arial, helvetica, sans-serif;
+background-color: #785088;
+}
+
+div#menu ul ul td:hover {
+width:100%;
+color: #fff;
+background-color: #9970A8;
+cursor:pointer;
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/tab.css
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/tab.css?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/tab.css (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/tab.css Fri Dec 5 12:30:14 2008
@@ -0,0 +1,166 @@
+.tab-on {
+ font: bold 11px/16px arial, helvetica, sans-serif;
+ border-style:normal;border-top:1px;border-bottom:0px;border-width:5px;border-color:#ffffff;
+ white-space: nowrap; background-color: #FDB5FF; background-image: url('images/titlebar.gif');
+ background: #9970A8;
+}
+
+.tab-hover {
+ font: bold 11px/16px arial, helvetica, sans-serif;
+ border-style:normal;border-top:1px;border-bottom:0px;border-width:5px;border-color:#ffffff; cursor:pointer;
+ white-space: nowrap;
+ background: #9970A8;
+}
+
+.tab-off {
+ font: bold 11px/16px arial, helvetica, sans-serif;
+ border-style:normal;border-top:1px;border-bottom:0px;border-width:5px;border-color:#ffffff; cursor:pointer;
+ white-space: nowrap;
+ background-color: #eeeeee;
+}
+
+.tab-off a {
+ font: bold 11px/16px arial, helvetica, sans-serif;
+ color: #000000;
+}
+
+.tab-on a, tab-hover a {
+ font: bold 11px/16px arial, helvetica, sans-serif;
+ color: #ffffff;
+}
+
+.subtab-on {
+ font:normal 11px Arial;color:#002E30; height:19px;vertical-align:middle;
+ border-style:solid;border-top:1px;border-bottom:0px;border-width:1px;border-color:#777772;
+ background-color: #FFFFFF;
+}
+
+.subtab-hover {
+ font:normal 11px Arial;color:#002E30; height:19px;vertical-align:middle;
+ border-style:solid;border-top:0;border-bottom:0px;border-width:1px;border-color:#777772; cursor:pointer;
+ background-repeat: repeat-x;
+ background-image: url('images/navbar-selected.gif');
+}
+
+.subtab-off {
+ font:normal 11px Arial;color:#002E30; height:19px;vertical-align:middle;
+ border-style:solid;border-top:0;border-bottom:0px;border-width:1px;border-color:#777772; cursor:pointer;
+ background-repeat: repeat-x;
+ background-image: url('images/navbar-hover.gif');
+}
+
+#tablist { font: bold 11px verdana, arial, sans-serif;
+ list-style-type: none;
+ height: 24px; margin: 4px 0px 0px 0px;
+}
+#tablist li {
+ float: left;
+ height: 21px; margin: 2px 0px 0px 0px;
+}
+#tablist a {
+ font: bold 11px/16px arial, helvetica, sans-serif;
+ float: left;
+ display: block;
+ text-decoration: none; padding: 2px 3px;
+ padding : 2px 10px 2px 10px;
+}
+
+#tablist a:hover {
+ color: #fff;
+}
+
+/*
+#tablist {
+ border-bottom : 1px solid #ccc;
+ margin : 0;
+ padding-bottom : 19px;
+ padding-left : 10px;
+}
+
+#tablist ul, #tablist li {
+ display : inline;
+ list-style-type : none;
+ margin : 0;
+ padding : 0;
+}
+
+
+#tablist a:link, #tablist a:visited {
+ background : #E8EBF0;
+ border : 1px solid #ccc;
+ color : #666;
+ float : left;
+ font-size : small;
+ font-weight : normal;
+ line-height : 14px;
+ margin-right : 8px;
+ padding : 2px 10px 2px 10px;
+ text-decoration : none;
+}
+
+#tablist a:link.active, #tablist a:visited.active {
+ background : #fff;
+ border-bottom : 1px solid #fff;
+ color : #000;
+}
+
+#tablist a:hover {
+ color : #f00;
+}
+
+
+body.section-1 #tablist li#nav-1 a,
+body.section-2 #tablist li#nav-2 a,
+body.section-3 #tablist li#nav-3 a,
+body.section-4 #tablist li#nav-4 a {
+ background : #fff;
+ border-bottom : 1px solid #fff;
+ color : #000;
+}
+
+#tablist #subnav-1,
+#tablist #subnav-2,
+#tablist #subnav-3,
+#tablist #subnav-4 {
+ display : none;
+ width: 90%;
+}
+
+body.section-1 #tablist ul#subnav-1,
+body.section-2 #tablist ul#subnav-2,
+body.section-3 #tablist ul#subnav-3,
+body.section-4 #tablist ul#subnav-4 {
+ display : inline;
+ left : 10px;
+ position : absolute;
+ top : 95px;
+}
+
+body.section-1 #tablist ul#subnav-1 a,
+body.section-2 #tablist ul#subnav-2 a,
+body.section-3 #tablist ul#subnav-3 a,
+body.section-4 #tablist ul#subnav-4 a {
+ background : #fff;
+ border : none;
+ border-left : 1px solid #ccc;
+ color : #999;
+ font-size : smaller;
+ font-weight : bold;
+ line-height : 10px;
+ margin-right : 4px;
+ padding : 2px 10px 2px 10px;
+ text-decoration : none;
+}
+
+ #tablist ul a:hover {
+ color : #f00 !important;
+}
+
+#contents {
+ background : #fff;
+ border : 1px solid #ccc;
+ border-top : none;
+ clear : both;
+ margin : 0px;
+ padding : 15px;
+}*/
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeframe.css
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeframe.css?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeframe.css (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeframe.css Fri Dec 5 12:30:14 2008
@@ -0,0 +1,175 @@
+div.timeframe_calendar {
+ display: inline-block;
+ margin: 0;
+ padding: 0;
+ text-align: center;
+ text-shadow: none;
+}
+
+/* Menu */
+div.timeframe_calendar ul.timeframe_menu {
+ list-style-type: none;
+ font-weight: bold;
+ margin: auto;
+ padding: 0 0 6px;
+ width: 60px;
+}
+ div.timeframe_calendar ul.timeframe_menu li {
+ display: inline;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a {
+ display: inline-block;
+ height: 20px;
+ padding: 2px 0 0;
+ text-decoration: none;
+ width: 20px;
+ -webkit-box-shadow: 0 1px 2px #999;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.previous, div.timeframe_calendar ul.timeframe_menu li a.next {
+ background: #fff;
+ color: #468966;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.previous:hover, div.timeframe_calendar ul.timeframe_menu li a.next:hover {
+ background: #ccc;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.previous:active, div.timeframe_calendar ul.timeframe_menu li a.next:active {
+ background: #aaa;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.disabled, div.timeframe_calendar ul.timeframe_menu li a.disabled:hover, div.timeframe_calendar ul.timeframe_menu li a.disabled:active {
+ background: #fff;
+ color: #ccc;
+ cursor: default;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.today {
+ background: #88CEFF;
+ color: #000;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.today:hover {
+ background: #785088;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.today:active {
+ background: #785088;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.previous {
+ -webkit-border-top-left-radius: 10px;
+ -webkit-border-bottom-left-radius: 10px;
+ -moz-border-radius-topleft: 11px;
+ -moz-border-radius-bottomleft: 11px;
+ }
+ div.timeframe_calendar ul.timeframe_menu li a.next {
+ -webkit-border-top-right-radius: 10px;
+ -webkit-border-bottom-right-radius: 10px;
+ -moz-border-radius-topright: 11px;
+ -moz-border-radius-bottomright: 11px;
+ }
+
+/* Calendar*/
+div.timeframe_calendar table {
+ border-collapse: collapse;
+ display: inline;
+ display: inline-block;
+ font-size: 15px;
+ margin: 0 6px 12px;
+}
+ /* Month names */
+ div.timeframe_calendar table caption {
+ text-shadow: 0 0 0 #fff;
+ }
+ /* Cell sizes */
+ div.timeframe_calendar thead th, div.timeframe_calendar tbody td {
+ text-align: center;
+ height: 18px;
+ margin: 0;
+ padding: 2px 1px;
+ width: 20px;
+ }
+ /* Weekday letters */
+ div.timeframe_calendar thead {
+ background: #886898;
+ color: #eee;
+ }
+ /* Days */
+ div.timeframe_calendar tbody {
+ background: #fff;
+ -webkit-box-shadow: 0px 2px 6px #999;
+ }
+ div.timeframe_calendar tbody td {
+ cursor: pointer;
+ }
+ /* Hover states not available in IE */
+ div.timeframe_calendar tbody td.selectable:hover {
+ background-color: #bbb;
+ }
+ div.timeframe_calendar tbody td.selected:hover, div.timeframe_calendar tbody td.stuck:hover {
+ background-color: #e1d8e5;
+ }
+ /* Selected states */
+ div.timeframe_calendar tbody td.selected {
+ background-color: #9980a8;
+ }
+ div.timeframe_calendar tbody td.stuck {
+ background-color: #e1d8e5;
+ }
+ /* Range markers */
+ div.timeframe_calendar tbody td.startrange, div.timeframe_calendar tbody td.endrange, div.timeframe_calendar tbody td.startendrange {
+ cursor: col-resize;
+ }
+ div.timeframe_calendar tbody td.startrange {
+ background-image: url(../images/start.png);
+ }
+ div.timeframe_calendar tbody td.endrange {
+ background-image: url(../images/end.png);
+ }
+ div.timeframe_calendar tbody td.startendrange {
+ background-image: url(../images/startend.png);
+ }
+ /* Today */
+ div.timeframe_calendar tbody td.today {
+ background-color: #88CEFF;
+ color: #000;
+ }
+ div.timeframe_calendar tbody td.today_selected {
+ background-color: #785088;
+ }
+ div.timeframe_calendar tbody td.today_stuck {
+ background-color: #785088;
+ }
+ /* Post/pre-month */
+ div.timeframe_calendar tbody td.beyond {
+ background-color: #aaa;
+ background-image: none;
+ color: #ccc;
+ }
+ div.timeframe_calendar tbody td.beyond_selected {
+ background-color: #999;
+ }
+ div.timeframe_calendar tbody td.beyond_stuck {
+ background-color: #888;
+ }
+
+ div.timeframe_calendar tbody td.unselectable {
+ color: #ccc;
+ cursor: default;
+ }
+ /* Clear button */
+ div.timeframe_calendar tbody td span.clear {
+ color: transparent;
+ display: block;
+ height: 0;
+ position: absolute;
+ width: 0;
+ }
+ div.timeframe_calendar tbody td span.clear span {
+ background-image: url(../images/closebox.png);
+ cursor: pointer;
+ display: block;
+ height: 30px;
+ left: -18px;
+ position: relative;
+ text-indent: -10000px;
+ top: -18px;
+ width: 30px;
+ }
+ div.timeframe_calendar tbody td span.clear span.active {
+ background-image: url(../images/closebox_selected.png);
+ }
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeline.css
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeline.css?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeline.css (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/css/timeline.css Fri Dec 5 12:30:14 2008
@@ -0,0 +1,311 @@
+/*
+ * Written by Stefano Mazzocchi <stefanom at mit dot edu>
+ */
+
+/* ----------------------------- Global Definitions -------------------- */
+
+body {
+ margin: 0px;
+ padding: 0px;
+ font-family: "georgia", "times", "times new roman", serif;
+ color: #222;
+ background-color: #fff;
+ font-size: 12px;
+ quotes: "\201C" "\201E" "\2018" "\2019";
+}
+
+@media screen {
+ body {
+ background-image: url(../images/stata.jpg);
+ background-position: left bottom;
+ background-repeat: no-repeat;
+ background-attachment: scroll;
+ }
+}
+
+a:link {
+ color: #222;
+}
+
+a:visited {
+ color: #666;
+}
+
+a:hover {
+ color: #000;
+}
+
+a:active {
+}
+
+a:focus {
+}
+
+img {
+ border: none;
+}
+
+/* ----------------------------- Sidebar -------------------------- */
+
+#sidebar {
+ float: right;
+ top: 150px;
+ right: 0px;
+ width: 220px;
+ background-color: white;
+ padding: 0px 0px 0px 0px;
+ margin: 0px 0px 4em 4em;
+ border-left: 1px solid #ccc;
+ border-bottom: 1px solid #ccc;
+}
+
+#sidebar .logo {
+ text-align: center;
+ padding: 2em 0px 1em 0px;
+ margin: 0px;
+}
+
+#sidebar h1 {
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+ letter-spacing: 0.15em;
+ font-size: 24px;
+ color: #333;
+ font-weight: normal;
+ text-align: center;
+ padding: 5px;
+}
+
+#sidebar h2 {
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+ letter-spacing: 0.15em;
+ text-transform: uppercase;
+ font-size: 11px;
+ color: #666;
+ font-weight: normal;
+ padding: 2px 0px 2px 4px;
+ margin: 5px 0px 5px 10px;
+ border-top: 1px solid #ccc;
+ border-left: 1px solid #ccc;
+ border-bottom: 1px solid #ccc;
+ border-color: #ccc;
+ color: #666;
+}
+
+#sidebar p {
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+ font-size: 10px;
+ padding-left: 20px;
+ padding-right: 5px;
+}
+
+#sidebar ul {
+ margin: 5px 5px 15px 5px;
+ padding-left: 25px;
+}
+
+#sidebar li {
+ margin-left: 0px;
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+ font-size: 10px;
+}
+
+#sidebar .important li {
+ font-weight: bold;
+}
+
+#sidebar .verbose li {
+ padding: 1px 0px 1px 0px;
+}
+
+#sidebar li.current {
+ font-weight: bold;
+}
+
+#sidebar .news {
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+ font-size: 90%;
+ border-top: 1px solid #ccc;
+ text-align: left;
+ padding: 1em 1em 1em 4em;
+}
+
+#sidebar .prominent {
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+ text-align: center;
+ padding: 1em;
+ padding-top: 0px;
+}
+
+#sidebar .new {
+ color: #ee0000;
+ font-size: smaller;
+ vertical-align: baseline;
+ position: relative;
+ bottom: 0.33em;
+}
+
+/* ----------------------------- Path ---------------------------- */
+
+#path {
+ color: #333;
+ background-color: #f8f8f8;
+ border-bottom: 1px solid #ccc;
+ padding: 2px 8px 2px 4px;
+ margin: 0px;
+}
+
+#path li {
+ display: inline;
+ padding-left: 13px;
+ padding-right: 3px;
+ background-image: url(../images/arrow.gif);
+ background-repeat: no-repeat;
+ background-position: 1px 5px;
+}
+
+#path span {
+ font-weight: bold;
+}
+
+/* ----------------------------- Body ---------------------------- */
+
+#body {
+ padding: 10px 10px 10px 10px;
+ margin: 0px 20px 10px 20px;
+}
+
+#body h1,h2,h3,h4 {
+ color: #666;
+}
+
+#body h1 {
+ border-top: 1px solid #ccc;
+ background-color: #eee;
+ border-bottom: 1px solid #ccc;
+ padding: 3px 8px 3px 12px;
+ margin: 15px -30px 35px -30px;
+}
+
+#body h2 {
+ border-bottom: 1px solid #ccc;
+ margin: 30px 0px 0px 0px;
+ padding: 0px;
+}
+
+#body .steps li {
+ padding: 5px;
+}
+
+#body .note {
+ margin: 3px;
+ padding: 3px;
+ border: 1px solid #ccc;
+ background-color: #eee;
+}
+
+#body .note:before {
+ content: "Note: ";
+ font-weight: bold;
+}
+
+#body .figure {
+ text-align: center;
+}
+
+#body .figure img {
+ border: 1px solid #ccc;
+}
+
+#body pre {
+ margin: 20px;
+ padding: 10px;
+ border: 1px solid #ccc;
+ background-color: #eee;
+}
+
+#body .screenshot {
+ text-align: center;
+}
+
+#body .notice {
+ margin: 15px;
+ padding: 5px;
+ background-color: #eee;
+ border: 1px solid #ccc;
+}
+
+#body .notice:before {
+ content: "Notice: ";
+ font-weight: bold;
+}
+
+#body dl dt {
+ font-weight: bold;
+ padding: 5px;
+}
+
+#body p.important {
+ margin: 40px 0px 40px 0px;
+ text-align: center;
+ font-size: 130%;
+ font-weight: bold;
+}
+
+#body #slideshow {
+ border: 1px solid #ccc;
+ background-image: url(../images/body_back.gif);
+ background-position: top left;
+ background-repeat: repeat-x;
+ margin-left: 30px;
+ margin-right: 250px;
+ height: 14em;
+}
+
+#body #slideshow .item {
+ display: none;
+ margin: 10px;
+}
+
+#body #slideshow .item .icon {
+ margin: 10px;
+ float: right;
+}
+
+#body #slideshow .item .title {
+ margin: 10px;
+ font-size: 300%;
+ font-weight: bold;
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+}
+
+#body #slideshow .item .description {
+ margin: 10px;
+ font-size: 130%;
+ height: 8em;
+}
+
+#body #slideshow .item .logo img {
+ border: 1px solid #ccc;
+}
+
+
+/* ----------------------------- Footer ---------------------------- */
+
+#footer {
+ margin: 0px 0px 5em 0px;
+ padding: 2px 5px 2px 10px;
+ border-top: 1px solid #aaa;
+ border-bottom: 1px solid #aaa;
+ border-right: 1px solid #aaa;
+ font-family: "verdana", "helvetica", "arial", sans-serif;
+ letter-spacing: 0.15em;
+ text-transform: uppercase;
+ font-size: 10px;
+ text-align: right;
+ float: left;
+ background: white;
+}
+
+#footer img {
+ margin: 5px 10px 5px 10px;
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk.descriptor
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk.descriptor?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk.descriptor (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk.descriptor Fri Dec 5 12:30:14 2008
@@ -0,0 +1,49 @@
+{
+"id":"cluster-disk",
+"title":"Cluster Disk Statistics",
+"version":"0.1",
+"categories":"System,Disk,Status",
+"module":"iframe/jsp/single-series-chart-javascript.jsp",
+"description":"Display cluster disk related statistics",
+"screendump":"\/images\/server_load.gif",
+"refresh":"15",
+"parameters":[
+{"name":"table","type":"string","value":"cluster_disk","edit":"0"},
+{"name":"group_override","type":"string","value":"mount","edit":"0"},
+{"name":"period","type":"select","value":"","label":"Period","options":[
+{"label":"Use Time Widget","value":""},
+{"label":"Last 1 Hour","value":"last1hr"},
+{"label":"Last 2 Hours","value":"last2hr"},
+{"label":"Last 3 Hours","value":"last3hr"},
+{"label":"Last 6 Hours","value":"last6hr"},
+{"label":"Last 12 Hours","value":"last12hr"},
+{"label":"Last 24 Hours","value":"last24hr"},
+{"label":"Yesterday","value":"yesterday"},
+{"label":"Last 7 Days","value":"last7d"},
+{"label":"Last 30 Days","value":"last30d"}
+]},
+{"name":"metric","type":"select_multiple","value":"available","label":"Metric","options":[
+{"label":"used","value":"used"},
+{"label":"available","value":"available"}
+]},
+{"name":"width","type":"select","value":"300","label":"Width","options":[
+{"label":"300","value":"300"},
+{"label":"400","value":"400"},
+{"label":"500","value":"500"},
+{"label":"600","value":"600"},
+{"label":"800","value":"800"},
+{"label":"1000","value":"1000"},
+{"label":"1200","value":"1200"}
+]},
+{"name":"height","type":"select","value":"200","label":"Height","options":[
+{"label":"200","value":"200"},
+{"label":"400","value":"400"},
+{"label":"600","value":"600"},
+{"label":"800","value":"800"},
+{"label":"1000","value":"1000"}
+]},
+{"name":"legend","type":"radio","value":"on","label":"Show Legends","options":[
+{"label":"On","value":"on"},
+{"label":"Off","value":"off"}]}
+]
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk_pcnt.descriptor
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk_pcnt.descriptor?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk_pcnt.descriptor (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_disk_pcnt.descriptor Fri Dec 5 12:30:14 2008
@@ -0,0 +1,47 @@
+{
+"id":"cluster-disk-pcnt",
+"title":"Cluster Disk Statistics By Percentage",
+"version":"0.1",
+"categories":"System,Disk,Status",
+"module":"iframe/jsp/single-series-chart-javascript.jsp",
+"description":"Display cluster disk related statistics",
+"screendump":"\/images\/server_load.gif",
+"refresh":"15",
+"parameters":[
+{"name":"table","type":"string","value":"cluster_disk","edit":"0"},
+{"name":"group_override","type":"string","value":"mount","edit":"0"},
+{"name":"y_axis_max","type":"string","value":"100","edit":"0"},
+{"name":"metric","type":"string","value":"used_percent","edit":"0"},
+{"name":"period","type":"select","value":"","label":"Period","options":[
+{"label":"Use Time Widget","value":""},
+{"label":"Last 1 Hour","value":"last1hr"},
+{"label":"Last 2 Hours","value":"last2hr"},
+{"label":"Last 3 Hours","value":"last3hr"},
+{"label":"Last 6 Hours","value":"last6hr"},
+{"label":"Last 12 Hours","value":"last12hr"},
+{"label":"Last 24 Hours","value":"last24hr"},
+{"label":"Yesterday","value":"yesterday"},
+{"label":"Last 7 Days","value":"last7d"},
+{"label":"Last 30 Days","value":"last30d"}
+]},
+{"name":"width","type":"select","value":"300","label":"Width","options":[
+{"label":"300","value":"300"},
+{"label":"400","value":"400"},
+{"label":"500","value":"500"},
+{"label":"600","value":"600"},
+{"label":"800","value":"800"},
+{"label":"1000","value":"1000"},
+{"label":"1200","value":"1200"}
+]},
+{"name":"height","type":"select","value":"200","label":"Height","options":[
+{"label":"200","value":"200"},
+{"label":"400","value":"400"},
+{"label":"600","value":"600"},
+{"label":"800","value":"800"},
+{"label":"1000","value":"1000"}
+]},
+{"name":"legend","type":"radio","value":"on","label":"Show Legends","options":[
+{"label":"On","value":"on"},
+{"label":"Off","value":"off"}]}
+]
+}
Added: hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_metrics.descriptor
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_metrics.descriptor?rev=723855&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_metrics.descriptor (added)
+++ hadoop/core/trunk/src/contrib/chukwa/src/web/hicc/descriptors/cluster_metrics.descriptor Fri Dec 5 12:30:14 2008
@@ -0,0 +1,81 @@
+{
+"id":"cluster_metrics",
+"title":"Cluster Metrics",
+"version":"0.1",
+"categories":"System,Status",
+"module":"iframe/jsp/single-series-chart-javascript.jsp",
+"description":"Display cluster related stats",
+"screendump":"\/images\/server_load.gif",
+"refresh":"15",
+"parameters":[
+{"name":"table","type":"string","value":"cluster_system_metrics","edit":"0"},
+{"name":"period","type":"select","value":"","label":"Period","options":[
+{"label":"Use Time Widget","value":""},
+{"label":"Last 1 Hour","value":"last1hr"},
+{"label":"Last 2 Hours","value":"last2hr"},
+{"label":"Last 3 Hours","value":"last3hr"},
+{"label":"Last 6 Hours","value":"last6hr"},
+{"label":"Last 12 Hours","value":"last12hr"},
+{"label":"Last 24 Hours","value":"last24hr"},
+{"label":"Yesterday","value":"yesterday"},
+{"label":"Last 7 Days","value":"last7d"},
+{"label":"Last 30 Days","value":"last30d"}
+]},
+{"name":"metric","type":"select_multiple","value":"load_15","label":"Metric","options":[
+{"label":"load_15","value":"load_15"},
+{"label":"load_5","value":"load_5"},
+{"label":"load_1","value":"load_1"},
+{"label":"task_total","value":"task_total"},
+{"label":"task_running","value":"task_running"},
+{"label":"task_sleep","value":"task_sleep"},
+{"label":"task_stopped","value":"task_stopped"},
+{"label":"task_zombie","value":"task_zombie"},
+{"label":"mem_total","value":"mem_total"},
+{"label":"mem_buffers","value":"mem_buffers"},
+{"label":"mem_cached","value":"mem_cached"},
+{"label":"mem_used","value":"mem_used"},
+{"label":"mem_free","value":"mem_free"},
+{"label":"eth0_rxerrs","value":"eth0_rxerrs"},
+{"label":"eth0_rxbyts","value":"eth0_rxbyts"},
+{"label":"eth0_rxpcks","value":"eth0_rxpcks"},
+{"label":"eth0_rxdrops","value":"eth0_rxdrops"},
+{"label":"eth0_txerrs","value":"eth0_txerrs"},
+{"label":"eth0_txbyts","value":"eth0_txbyts"},
+{"label":"eth0_txpcks","value":"eth0_txpcks"},
+{"label":"eth0_txdrops","value":"eth0_txdrops"},
+{"label":"eth1_rxerrs","value":"eth1_rxerrs"},
+{"label":"eth1_rxbyts","value":"eth1_rxbyts"},
+{"label":"eth1_rxpcks","value":"eth1_rxpcks"},
+{"label":"eth1_rxdrops","value":"eth1_rxdrops"},
+{"label":"eth1_txerrs","value":"eth1_txerrs"},
+{"label":"eth1_txbyts","value":"eth1_txbyts"},
+{"label":"eth1_txpcks","value":"eth1_txpcks"},
+{"label":"eth1_txdrops","value":"eth1_txdrops"},
+{"label":"sda_rkbs","value":"sda_rkbs"},
+{"label":"sda_wkbs","value":"sda_wkbs"},
+{"label":"sdb_rkbs","value":"sdb_rkbs"},
+{"label":"sdb_wkbs","value":"sdb_wkbs"},
+{"label":"sdc_rkbs","value":"sdc_rkbs"},
+{"label":"sdc_wkbs","value":"sdc_wkbs"},
+{"label":"sdd_rkbs","value":"sdd_rkbs"},
+{"label":"sdd_wkbs","value":"sdd_wkbs"}
+]},
+{"name":"width","type":"select","value":"300","label":"Width","options":[
+{"label":"300","value":"300"},
+{"label":"400","value":"400"},
+{"label":"500","value":"500"},
+{"label":"600","value":"600"},
+{"label":"800","value":"800"},
+{"label":"1200","value":"1200"}
+]},
+{"name":"height","type":"select","value":"200","label":"Height","options":[
+{"label":"200","value":"200"},
+{"label":"400","value":"400"},
+{"label":"600","value":"600"},
+{"label":"1000","value":"1000"}
+]},
+{"name":"legend","type":"radio","value":"on","label":"Show Legends","options":[
+{"label":"On","value":"on"},
+{"label":"Off","value":"off"}]}
+]
+}