コード例 #1
0
        /// <summary>Prints the node report for node id.</summary>
        /// <param name="nodeIdStr"/>
        /// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/>
        /// <exception cref="System.IO.IOException"/>
        private void PrintNodeStatus(string nodeIdStr)
        {
            NodeId             nodeId      = ConverterUtils.ToNodeId(nodeIdStr);
            IList <NodeReport> nodesReport = client.GetNodeReports();
            // Use PrintWriter.println, which uses correct platform line ending.
            ByteArrayOutputStream baos          = new ByteArrayOutputStream();
            PrintWriter           nodeReportStr = new PrintWriter(new OutputStreamWriter(baos, Sharpen.Extensions.GetEncoding
                                                                                             ("UTF-8")));
            NodeReport nodeReport = null;

            foreach (NodeReport report in nodesReport)
            {
                if (!report.GetNodeId().Equals(nodeId))
                {
                    continue;
                }
                nodeReport = report;
                nodeReportStr.WriteLine("Node Report : ");
                nodeReportStr.Write("\tNode-Id : ");
                nodeReportStr.WriteLine(nodeReport.GetNodeId());
                nodeReportStr.Write("\tRack : ");
                nodeReportStr.WriteLine(nodeReport.GetRackName());
                nodeReportStr.Write("\tNode-State : ");
                nodeReportStr.WriteLine(nodeReport.GetNodeState());
                nodeReportStr.Write("\tNode-Http-Address : ");
                nodeReportStr.WriteLine(nodeReport.GetHttpAddress());
                nodeReportStr.Write("\tLast-Health-Update : ");
                nodeReportStr.WriteLine(DateFormatUtils.Format(Sharpen.Extensions.CreateDate(nodeReport
                                                                                             .GetLastHealthReportTime()), "E dd/MMM/yy hh:mm:ss:SSzz"));
                nodeReportStr.Write("\tHealth-Report : ");
                nodeReportStr.WriteLine(nodeReport.GetHealthReport());
                nodeReportStr.Write("\tContainers : ");
                nodeReportStr.WriteLine(nodeReport.GetNumContainers());
                nodeReportStr.Write("\tMemory-Used : ");
                nodeReportStr.WriteLine((nodeReport.GetUsed() == null) ? "0MB" : (nodeReport.GetUsed
                                                                                      ().GetMemory() + "MB"));
                nodeReportStr.Write("\tMemory-Capacity : ");
                nodeReportStr.WriteLine(nodeReport.GetCapability().GetMemory() + "MB");
                nodeReportStr.Write("\tCPU-Used : ");
                nodeReportStr.WriteLine((nodeReport.GetUsed() == null) ? "0 vcores" : (nodeReport
                                                                                       .GetUsed().GetVirtualCores() + " vcores"));
                nodeReportStr.Write("\tCPU-Capacity : ");
                nodeReportStr.WriteLine(nodeReport.GetCapability().GetVirtualCores() + " vcores");
                nodeReportStr.Write("\tNode-Labels : ");
                // Create a List for node labels since we need it get sorted
                IList <string> nodeLabelsList = new AList <string>(report.GetNodeLabels());
                nodeLabelsList.Sort();
                nodeReportStr.WriteLine(StringUtils.Join(nodeLabelsList.GetEnumerator(), ','));
            }
            if (nodeReport == null)
            {
                nodeReportStr.Write("Could not find the node report for node id : " + nodeIdStr);
            }
            nodeReportStr.Close();
            sysout.WriteLine(baos.ToString("UTF-8"));
        }
コード例 #2
0
 public void FiltersOutInvalidDateFormats()
 {
     DateFormatUtils.ChangeDateFormat(new[] {
         "2010/03/30", "15/12/2016", "11-15-2012", "20130720"
     }).Should().BeEquivalentTo("20100330", "20161215", "20121115");
 }