用于SoftLayer中监控的用户列表和IP列表

时间:2016-05-31 15:30:44

标签: ibm-cloud-infrastructure

我对Softlayer中的监控有疑问。 如何获取要添加的IP地址列表? IP比主要IP更多。是否有API来获取用于监控的IP?

如何让用户列表通知?我使用的代码没有用户。

    List<Agent> agentList = guest.getMonitoringAgents();

    for (Agent agent : agentList) {

        List<Customer> custList = agent.asService(client).getEligibleAlarmSubscibers();

}

Ip List User List

1 个答案:

答案 0 :(得分:0)

要获取要添加的IP地址列表,您可以尝试以下方法:

  

[已更新]这是一个通过硬件获取IP地址的示例

package com.softlayer.api.NetworkMonitor;

import com.softlayer.api.ApiClient;
import com.softlayer.api.RestApiClient;
import com.softlayer.api.service.Hardware;
import com.softlayer.api.service.network.Monitor;
import com.softlayer.api.service.network.subnet.IpAddress;

/**
 * This script will return an arrayObject of objects containing the ipaddresses for hardware
 *
 * Important Manual Page:
 * http://sldn.softlayer.com/reference/services/SoftLayer_Network_Monitor/getIpAddressesByHardware
 * http://sldn.softlayer.com/reference/datatypes/SoftLayer_Network_Subnet_IpAddress
 *
 * @license <http://sldn.softlayer.com/article/License>
 * @authon SoftLayer Technologies, Inc. <sldn@softlayer.com>
 * @version 0.2.2
 */
public class GetIpAddressesByHardware {
    /**
     * This is the constructor, is used to Get Ip Addresses By Hardware
     */
    public GetIpAddressesByHardware() {
        // Declare your SoftLayer username and apiKey
        String username = "set me";
        String apiKey = "set me";

        // Define Hardware identifier
        Long hardwareId = new Long(92862);

        // Create client
        ApiClient client = new RestApiClient().withCredentials(username, apiKey);

       Monitor.Service monitorService = Monitor.service(client);

        Hardware hardware = new Hardware();
        hardware.setId(hardwareId);
        try {
            for(IpAddress ipAddress : monitorService.getIpAddressesByHardware(hardware, ""))
            {
                System.out.println("Ip Address: " + ipAddress.getIpAddress());
            }


        } catch (Exception e) {
            System.out.println("Error: " + e);
        }
    }

    /**
     * This is the main method which makes use of GetIpAddressesByHardware method.
     *
     * @param args
     * @return Nothing
     */
    public static void main(String[] args) {
        new GetIpAddressesByHardware();
    }


}

关于:如何让用户列表通知?

以下方法将有助于此:

  

[已更新]这是一个使用SoftLayer_Hardware_Server::getUsers

的脚本
package com.softlayer.api.HardwareServer;

import com.softlayer.api.ApiClient;
import com.softlayer.api.RestApiClient;
import com.softlayer.api.service.hardware.Server;
import com.softlayer.api.service.user.Customer;

/**
 * This script retrieves a list of users that have access to this computing instance.
 *
 * Important Manual Page:
 * http://sldn.softlayer.com/reference/services/SoftLayer_Hardware_Server/getUsers
 * http://sldn.softlayer.com/reference/datatypes/SoftLayer_User_Customer
 *
 * @license <http://sldn.softlayer.com/article/License>
 * @authon SoftLayer Technologies, Inc. <sldn@softlayer.com>
 * @version 0.2.2
 */
public class GetUsers {
    /**
     * This is the constructor, is used to Get Users from hardware
     */
    public GetUsers() {
        // Declare your SoftLayer username and apiKey
        String username = "set me";
        String apiKey = "set me";

        // Define Hardware identifier
        Long hardwareId = new Long(92862);

        // Create client
        ApiClient client = new RestApiClient().withCredentials(username, apiKey);

        Server.Service serverService = Server.service(client, hardwareId);
        try {
            for(Customer user : serverService.getUsers())
            {
                System.out.println("Id: " + user.getId());
                System.out.println("User: " + user.getLastName() + ", " + user.getFirstName() + "(" + user.getUsername() + ")");
                System.out.println("----------------------------");
            }
        } catch (Exception e) {
            System.out.println("Error: " + e);
        }
    }

    /**
     * This is the main method which makes use of GetUsers method.
     *
     * @param args
     * @return Nothing
     */
    public static void main(String[] args) {
        new GetUsers();
    }


}

这是一个使用SoftLayer_Virtual_Guest::getUsers的脚本:

package Monitoring;

import com.softlayer.api.ApiClient;
import com.softlayer.api.RestApiClient;
import com.softlayer.api.service.user.Customer;
import com.softlayer.api.service.virtual.Guest;

/**
 * This script retrieve a list of users that have access to this computing instance.
 *
 * Important Manual Page:
 * http://sldn.softlayer.com/reference/services/SoftLayer_Virtual_Guest/getUsers
 * http://sldn.softlayer.com/reference/datatypes/SoftLayer_User_Customer
 *
 * @license <http://sldn.softlayer.com/article/License>
 * @authon SoftLayer Technologies, Inc. <sldn@softlayer.com>
 * @version 0.2.2
 */
public class GetUserList {
    /**
     * This is the constructor, is used to Add users to notify
     */
    public GetUserList() {
        // Declare your SoftLayer username and apiKey
        String username = "set me";
        String apiKey = "set me";

        // Define the virtual guest id
        Long guestId = new Long(18697221);

        // Create client
        ApiClient client = new RestApiClient().withCredentials(username, apiKey);

        // Define SoftLayer_Virtual_Guest service
        Guest.Service guestService = Guest.service(client, guestId);


        try {
            for(Customer user : guestService.getUsers())
            {
                System.out.println("Id: " + user.getId());
                System.out.println("User: " + user.getLastName() + ", " + user.getFirstName() + "(" + user.getUsername() + ")");
                System.out.println("----------------------------");
            }

        } catch (Exception e) {
            System.out.println("Error: " + e);
        }
    }

    /**
     * This is the main method which makes use of GetUserList method.
     *
     * @param args
     * @return Nothing
     */
    public static void main(String[] args) {
        new GetUserList();
    }
}