Search in sources :

Example 1 with SNMPTriple

use of com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple in project mysql_perf_analyzer by yahoo.

the class SNMPQueryProcessor method queryNetwork.

private ResultList queryNetwork(SNMPClient client, QueryParameters qps) throws Exception {
    boolean diff = "1".equalsIgnoreCase(qps.getSqlParams().get("p_2"));
    Map<String, List<SNMPTriple>> snmpData = client.getNetIfData(null);
    if (snmpData == null)
        return null;
    ColumnDescriptor desc = new ColumnDescriptor();
    desc.addColumn("NAME", false, 0);
    desc.addColumn("OID", false, 1);
    desc.addColumn("VALUE", false, 2);
    ResultList rList = new ResultList();
    rList.setColumnDescriptor(desc);
    for (Map.Entry<String, List<SNMPTriple>> e : snmpData.entrySet()) {
        String net = e.getKey();
        for (SNMPTriple t : e.getValue()) {
            if (diff) {
                try {
                    BigDecimal bd = new BigDecimal(t.value);
                } catch (Exception ex) {
                    continue;
                }
            }
            ResultRow row = new ResultRow();
            row.addColumn(net + "." + t.name);
            row.addColumn(t.oid);
            row.addColumn(t.value);
            row.setColumnDescriptor(desc);
            rList.addRow(row);
        }
    }
    return rList;
}
Also used : ResultRow(com.yahoo.dba.perf.myperf.common.ResultRow) ResultList(com.yahoo.dba.perf.myperf.common.ResultList) ColumnDescriptor(com.yahoo.dba.perf.myperf.common.ColumnDescriptor) SNMPTriple(com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple) List(java.util.List) ResultList(com.yahoo.dba.perf.myperf.common.ResultList) Map(java.util.Map) BigDecimal(java.math.BigDecimal) SQLException(java.sql.SQLException)

Example 2 with SNMPTriple

use of com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple in project mysql_perf_analyzer by yahoo.

the class SNMPQueryProcessor method querySystemData.

private ResultList querySystemData(SNMPClient client, QueryParameters qps) throws Exception {
    boolean diff = "1".equalsIgnoreCase(qps.getSqlParams().get("p_2"));
    List<SNMPTriple> snmpData = client.querySysData3();
    if (snmpData == null)
        return null;
    ColumnDescriptor desc = new ColumnDescriptor();
    desc.addColumn("NAME", false, 0);
    desc.addColumn("OID", false, 1);
    desc.addColumn("VALUE", false, 2);
    ResultList rList = new ResultList();
    rList.setColumnDescriptor(desc);
    for (SNMPTriple t : snmpData) {
        if (diff) {
            try {
                BigDecimal bd = new BigDecimal(t.value);
            } catch (Exception ex) {
                continue;
            }
        }
        ResultRow row = new ResultRow();
        row.addColumn(t.name);
        row.addColumn(t.oid);
        row.addColumn(t.value);
        row.setColumnDescriptor(desc);
        rList.addRow(row);
    }
    return rList;
}
Also used : ResultRow(com.yahoo.dba.perf.myperf.common.ResultRow) ResultList(com.yahoo.dba.perf.myperf.common.ResultList) ColumnDescriptor(com.yahoo.dba.perf.myperf.common.ColumnDescriptor) SNMPTriple(com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple) BigDecimal(java.math.BigDecimal) SQLException(java.sql.SQLException)

Example 3 with SNMPTriple

use of com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple in project mysql_perf_analyzer by yahoo.

the class SNMPQueryProcessor method queryDisk.

/**
	 * Query disk data, in (name, oid, value). Note name will be prefixed with disk name.
	 * @param qps
	 * @return
	 * @throws Exception
	 */
private ResultList queryDisk(SNMPClient client, QueryParameters qps) throws Exception {
    boolean diff = "1".equalsIgnoreCase(qps.getSqlParams().get("p_2"));
    Map<String, List<SNMPTriple>> snmpData = client.getMultiDiskData();
    if (snmpData == null)
        return null;
    ColumnDescriptor desc = new ColumnDescriptor();
    desc.addColumn("NAME", false, 0);
    desc.addColumn("OID", false, 1);
    desc.addColumn("VALUE", false, 2);
    ResultList rList = new ResultList();
    rList.setColumnDescriptor(desc);
    for (Map.Entry<String, List<SNMPTriple>> e : snmpData.entrySet()) {
        String disk = e.getKey();
        for (SNMPTriple t : e.getValue()) {
            if (diff) {
                try {
                    BigDecimal bd = new BigDecimal(t.value);
                } catch (Exception ex) {
                    continue;
                }
            }
            ResultRow row = new ResultRow();
            row.addColumn(disk + "." + t.name);
            row.addColumn(t.oid);
            row.addColumn(t.value);
            row.setColumnDescriptor(desc);
            rList.addRow(row);
        }
    }
    return rList;
}
Also used : ResultRow(com.yahoo.dba.perf.myperf.common.ResultRow) ResultList(com.yahoo.dba.perf.myperf.common.ResultList) ColumnDescriptor(com.yahoo.dba.perf.myperf.common.ColumnDescriptor) SNMPTriple(com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple) List(java.util.List) ResultList(com.yahoo.dba.perf.myperf.common.ResultList) Map(java.util.Map) BigDecimal(java.math.BigDecimal) SQLException(java.sql.SQLException)

Example 4 with SNMPTriple

use of com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple in project mysql_perf_analyzer by yahoo.

the class SNMPQueryProcessor method queryTableSNMP.

private ResultList queryTableSNMP(SNMPClient client, QueryParameters qps) throws Exception {
    //p2 will be oid
    String oid = qps.getSqlParams().get("p_2");
    List<SNMPTriple> snmpData = client.querySingleSNMPTableByOID(oid);
    if (snmpData == null)
        return null;
    ColumnDescriptor desc = new ColumnDescriptor();
    desc.addColumn("NAME", false, 0);
    desc.addColumn("OID", false, 1);
    desc.addColumn("VALUE", false, 2);
    ResultList rList = new ResultList();
    rList.setColumnDescriptor(desc);
    for (SNMPTriple t : snmpData) {
        ResultRow row = new ResultRow();
        row.addColumn(t.name);
        row.addColumn(t.oid);
        row.addColumn(t.value);
        row.setColumnDescriptor(desc);
        rList.addRow(row);
    }
    return rList;
}
Also used : ResultRow(com.yahoo.dba.perf.myperf.common.ResultRow) ResultList(com.yahoo.dba.perf.myperf.common.ResultList) ColumnDescriptor(com.yahoo.dba.perf.myperf.common.ColumnDescriptor) SNMPTriple(com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple)

Example 5 with SNMPTriple

use of com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple in project mysql_perf_analyzer by yahoo.

the class SNMPQueryProcessor method queryMysqldData.

private ResultList queryMysqldData(SNMPClient client, QueryParameters qps) throws Exception {
    boolean diff = "1".equalsIgnoreCase(qps.getSqlParams().get("p_2"));
    List<SNMPTriple> snmpData = null;
    try {
        snmpData = client.getProcessData("mysqld");
    } catch (Exception ex) {
        logger.log(Level.SEVERE, "Failed to retrieve mysqld perf data", ex);
    }
    if (snmpData == null)
        return null;
    ColumnDescriptor desc = new ColumnDescriptor();
    desc.addColumn("NAME", false, 0);
    desc.addColumn("OID", false, 1);
    desc.addColumn("VALUE", false, 2);
    ResultList rList = new ResultList();
    rList.setColumnDescriptor(desc);
    for (SNMPTriple t : snmpData) {
        if (diff) {
            try {
                BigDecimal bd = new BigDecimal(t.value);
            } catch (Exception ex) {
                continue;
            }
        }
        ResultRow row = new ResultRow();
        row.addColumn(t.name);
        row.addColumn(t.oid);
        row.addColumn(t.value);
        row.setColumnDescriptor(desc);
        rList.addRow(row);
    }
    return rList;
}
Also used : ResultRow(com.yahoo.dba.perf.myperf.common.ResultRow) ResultList(com.yahoo.dba.perf.myperf.common.ResultList) ColumnDescriptor(com.yahoo.dba.perf.myperf.common.ColumnDescriptor) SNMPTriple(com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple) SQLException(java.sql.SQLException) BigDecimal(java.math.BigDecimal)

Aggregations

ColumnDescriptor (com.yahoo.dba.perf.myperf.common.ColumnDescriptor)7 ResultList (com.yahoo.dba.perf.myperf.common.ResultList)7 ResultRow (com.yahoo.dba.perf.myperf.common.ResultRow)7 SNMPTriple (com.yahoo.dba.perf.myperf.snmp.SNMPClient.SNMPTriple)7 BigDecimal (java.math.BigDecimal)5 SQLException (java.sql.SQLException)5 List (java.util.List)3 Map (java.util.Map)3