当前位置: 首页>>代码示例>>Java>>正文


Java NodesHotThreadsResponse类代码示例

本文整理汇总了Java中org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse的典型用法代码示例。如果您正苦于以下问题:Java NodesHotThreadsResponse类的具体用法?Java NodesHotThreadsResponse怎么用?Java NodesHotThreadsResponse使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


NodesHotThreadsResponse类属于org.elasticsearch.action.admin.cluster.node.hotthreads包,在下文中一共展示了NodesHotThreadsResponse类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: prepareRequest

import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse; //导入依赖的package包/类
@Override
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
    String[] nodesIds = Strings.splitStringByCommaToArray(request.param("nodeId"));
    NodesHotThreadsRequest nodesHotThreadsRequest = new NodesHotThreadsRequest(nodesIds);
    nodesHotThreadsRequest.threads(request.paramAsInt("threads", nodesHotThreadsRequest.threads()));
    nodesHotThreadsRequest.ignoreIdleThreads(request.paramAsBoolean("ignore_idle_threads", nodesHotThreadsRequest.ignoreIdleThreads()));
    nodesHotThreadsRequest.type(request.param("type", nodesHotThreadsRequest.type()));
    nodesHotThreadsRequest.interval(TimeValue.parseTimeValue(request.param("interval"), nodesHotThreadsRequest.interval(), "interval"));
    nodesHotThreadsRequest.snapshots(request.paramAsInt("snapshots", nodesHotThreadsRequest.snapshots()));
    nodesHotThreadsRequest.timeout(request.param("timeout"));
    return channel -> client.admin().cluster().nodesHotThreads(
            nodesHotThreadsRequest,
            new RestResponseListener<NodesHotThreadsResponse>(channel) {
                @Override
                public RestResponse buildResponse(NodesHotThreadsResponse response) throws Exception {
                    StringBuilder sb = new StringBuilder();
                    for (NodeHotThreads node : response.getNodes()) {
                        sb.append("::: ").append(node.getNode().toString()).append("\n");
                        Strings.spaceify(3, node.getHotThreads(), sb);
                        sb.append('\n');
                    }
                    return new BytesRestResponse(RestStatus.OK, sb.toString());
                }
            });
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:26,代码来源:RestNodesHotThreadsAction.java

示例2: handleRequest

import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse; //导入依赖的package包/类
@Override
public void handleRequest(final RestRequest request, final RestChannel channel, final Client client) {
    String[] nodesIds = Strings.splitStringByCommaToArray(request.param("nodeId"));
    NodesHotThreadsRequest nodesHotThreadsRequest = new NodesHotThreadsRequest(nodesIds);
    nodesHotThreadsRequest.threads(request.paramAsInt("threads", nodesHotThreadsRequest.threads()));
    nodesHotThreadsRequest.ignoreIdleThreads(request.paramAsBoolean("ignore_idle_threads", nodesHotThreadsRequest.ignoreIdleThreads()));
    nodesHotThreadsRequest.type(request.param("type", nodesHotThreadsRequest.type()));
    nodesHotThreadsRequest.interval(TimeValue.parseTimeValue(request.param("interval"), nodesHotThreadsRequest.interval(), "interval"));
    nodesHotThreadsRequest.snapshots(request.paramAsInt("snapshots", nodesHotThreadsRequest.snapshots()));
    nodesHotThreadsRequest.timeout(request.param("timeout"));
    client.admin().cluster().nodesHotThreads(nodesHotThreadsRequest, new RestResponseListener<NodesHotThreadsResponse>(channel) {
        @Override
        public RestResponse buildResponse(NodesHotThreadsResponse response) throws Exception {
            StringBuilder sb = new StringBuilder();
            for (NodeHotThreads node : response) {
                sb.append("::: ").append(node.getNode().toString()).append("\n");
                Strings.spaceify(3, node.getHotThreads(), sb);
                sb.append('\n');
            }
            return new BytesRestResponse(RestStatus.OK, sb.toString());
        }
    });
}
 
开发者ID:baidu,项目名称:Elasticsearch,代码行数:24,代码来源:RestNodesHotThreadsAction.java

示例3: responseToOutput

import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse; //导入依赖的package包/类
@Override
protected String responseToOutput(NodesHotThreadsRequest request, NodesHotThreadsResponse response) {
    StringBuilder sb = new StringBuilder();
    try {
        for (NodeHotThreads node : response) {
            sb.append("::: ").append(node.getNode().toString()).append("\n");
            Strings.spaceify(3, node.getHotThreads(), sb);
            sb.append('\n');
        }
    } catch(Exception e) {
        logger.error("Error while generating the nodes hot thread output", e);
    }
    return sb.toString();
}
 
开发者ID:javanna,项目名称:elasticshell,代码行数:15,代码来源:NodesHotThreadsRequestBuilder.java

示例4: nodesHotThreads

import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse; //导入依赖的package包/类
@Override
public ActionFuture<NodesHotThreadsResponse> nodesHotThreads(NodesHotThreadsRequest request) {
    return execute(NodesHotThreadsAction.INSTANCE, request);
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:5,代码来源:AbstractClient.java

示例5: execute

import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse; //导入依赖的package包/类
public void execute(NodesHotThreadsRequest request, final ActionListener<NodesHotThreadsResponse> listener) {
        logger.debug("nodes hot threads request {}", request);
        // TODO test
        try {
            StringBuilder url = new StringBuilder();
            url.append("_nodes/");
            if (request.nodesIds().length != 0) {
                url.append(Strings.arrayToCommaDelimitedString(request.nodesIds()));
            }
            RequestUriBuilder uriBuilder = new RequestUriBuilder(url.toString());
            uriBuilder.addEndpoint("hot_threads");

            TimeValue interval = request.interval();
            int snapshots = request.snapshots();
            int threads = request.threads();
            String type = request.type();

            uriBuilder.addQueryParameter("interval", interval.toString());
            uriBuilder.addQueryParameter("snapshots", String.valueOf(snapshots));
            uriBuilder.addQueryParameter("threads", String.valueOf(threads));
            uriBuilder.addQueryParameter("type", type);

            indicesAdminClient.getHttpClient().submit(HttpClientRequest.createGet(uriBuilder.toString()))
                    .flatMap(ErrorHandler.AS_FUNC)
                    .flatMap(new Func1<HttpClientResponse<ByteBuf>, Observable<NodesHotThreadsResponse>>() {
                        @Override
                        public Observable<NodesHotThreadsResponse> call(HttpClientResponse<ByteBuf> response) {
                            return response.getContent().flatMap(new Func1<ByteBuf, Observable<NodesHotThreadsResponse>>() {
                                @Override
                                public Observable<NodesHotThreadsResponse> call(ByteBuf byteBuf) {
                                    // TODO
                                    return null;
                                }
                            });
                        }
                    })
                    .single()
                    .subscribe(new ListenerCompleterObserver<>(listener));

//                public NodesHotThreadsResponse onCompleted(Response response) {
//                    // this is not a json response, so I can not use the classic mecanism
//                    // TODO use indexOf to find the first lines and avoid parsing the full body
//                    List<String> splitted;
//                    try {
//                        splitted = Lists.newArrayList(Splitter.on(":::").omitEmptyStrings().split(response.getResponseBody()));
//                    } catch (IOException e) {
//                        throw new RuntimeException("Unable to read node hot thread response", e);
//                    }
//
//                    //  0.4% (2ms out of 500ms) cpu usage by thread 'elasticsearch[transport_client_node_1][transport_client_worker][T#1]{New I/O worker #205}'
//                    // 10/10 snapshots sharing following 15 elements
//                    // sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
//                    // [...stack trace ...]
//
//                    Iterable<NodeHotThreads> transformed = Iterables.transform(splitted, new Function<String, NodeHotThreads>() {
//                        @Override
//                        public NodeHotThreads apply(String input) {
//                            // ::: [node_1][nh_NJHcRRuameGupZWeCig][olivier-pc][inet[/10.1.103.89:9301]]
//                            // TODO the toString() from DiscoveryNode may omit some elements
//                            List<String> parts = Lists.newArrayList(Splitter.on("[").split(input));
//                            String nodeName = parts.get(1).replace("]", ""); // remove trailing ']'
//                            String nodeId = parts.get(2).replace("]", "");
////                            String hostname = parts.get(3).replace("]", "");
////                            String transportType = parts.get(4);
//                            // TODO clean this
//                            // TODO move the trailing ']' handling to parseTransportAddress
//                            String host = parts.get(5).substring(0, parts.get(5).indexOf(']'));
//                            String address = parts.get(4) + host;
//                            TransportAddress transportAddress = ResponseWrapper.parseTransportAddress(address);
//                            DiscoveryNode node = new DiscoveryNode(nodeName, nodeId, transportAddress, Collections.<String, String>emptyMap(), Version.CURRENT);
//                            return new NodeHotThreads(node, input);
//                        }
//                    });
//                    NodeHotThreads[] nodeHotThreadses = FluentIterable.from(transformed).toArray(NodeHotThreads.class);
//                    NodesHotThreadsResponse nodeHotThreads = new NodesHotThreadsResponse(new ClusterName(""), nodeHotThreadses);

        } catch (Exception e) {
            listener.onFailure(e);
        }
    }
 
开发者ID:obourgain,项目名称:elasticsearch-http,代码行数:81,代码来源:NodesHotThreadsActionHandler.java

示例6: doExecute

import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse; //导入依赖的package包/类
@Override
protected ActionFuture<NodesHotThreadsResponse> doExecute(NodesHotThreadsRequest request) {
    return client.admin().cluster().nodesHotThreads(request);
}
 
开发者ID:javanna,项目名称:elasticshell,代码行数:5,代码来源:NodesHotThreadsRequestBuilder.java

示例7: nodesHotThreads

import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse; //导入依赖的package包/类
/**
 * Returns top N hot-threads samples per node. The hot-threads are only sampled
 * for the node ids specified in the request.
 */
ActionFuture<NodesHotThreadsResponse> nodesHotThreads(NodesHotThreadsRequest request);
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:6,代码来源:ClusterAdminClient.java


注:本文中的org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。