Node Stats: add max content length to http info
This commit is contained in:
parent
0d5530e55f
commit
31a8e92b8e
|
@ -23,6 +23,7 @@ import org.elasticsearch.common.io.stream.StreamInput;
|
||||||
import org.elasticsearch.common.io.stream.StreamOutput;
|
import org.elasticsearch.common.io.stream.StreamOutput;
|
||||||
import org.elasticsearch.common.io.stream.Streamable;
|
import org.elasticsearch.common.io.stream.Streamable;
|
||||||
import org.elasticsearch.common.transport.BoundTransportAddress;
|
import org.elasticsearch.common.transport.BoundTransportAddress;
|
||||||
|
import org.elasticsearch.common.unit.ByteSizeValue;
|
||||||
import org.elasticsearch.common.xcontent.ToXContent;
|
import org.elasticsearch.common.xcontent.ToXContent;
|
||||||
import org.elasticsearch.common.xcontent.XContentBuilder;
|
import org.elasticsearch.common.xcontent.XContentBuilder;
|
||||||
import org.elasticsearch.common.xcontent.XContentBuilderString;
|
import org.elasticsearch.common.xcontent.XContentBuilderString;
|
||||||
|
@ -36,18 +37,22 @@ import java.io.Serializable;
|
||||||
public class HttpInfo implements Streamable, Serializable, ToXContent {
|
public class HttpInfo implements Streamable, Serializable, ToXContent {
|
||||||
|
|
||||||
private BoundTransportAddress address;
|
private BoundTransportAddress address;
|
||||||
|
private long maxContentLength;
|
||||||
|
|
||||||
HttpInfo() {
|
HttpInfo() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public HttpInfo(BoundTransportAddress address) {
|
public HttpInfo(BoundTransportAddress address, long maxContentLength) {
|
||||||
this.address = address;
|
this.address = address;
|
||||||
|
this.maxContentLength = maxContentLength;
|
||||||
}
|
}
|
||||||
|
|
||||||
static final class Fields {
|
static final class Fields {
|
||||||
static final XContentBuilderString HTTP = new XContentBuilderString("http");
|
static final XContentBuilderString HTTP = new XContentBuilderString("http");
|
||||||
static final XContentBuilderString BOUND_ADDRESS = new XContentBuilderString("bound_address");
|
static final XContentBuilderString BOUND_ADDRESS = new XContentBuilderString("bound_address");
|
||||||
static final XContentBuilderString PUBLISH_ADDRESS = new XContentBuilderString("publish_address");
|
static final XContentBuilderString PUBLISH_ADDRESS = new XContentBuilderString("publish_address");
|
||||||
|
static final XContentBuilderString MAX_CONTENT_LENGTH = new XContentBuilderString("max_content_length");
|
||||||
|
static final XContentBuilderString MAX_CONTENT_LENGTH_IN_BYTES = new XContentBuilderString("max_content_length_in_bytes");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -55,6 +60,8 @@ public class HttpInfo implements Streamable, Serializable, ToXContent {
|
||||||
builder.startObject(Fields.HTTP);
|
builder.startObject(Fields.HTTP);
|
||||||
builder.field(Fields.BOUND_ADDRESS, address.boundAddress().toString());
|
builder.field(Fields.BOUND_ADDRESS, address.boundAddress().toString());
|
||||||
builder.field(Fields.PUBLISH_ADDRESS, address.publishAddress().toString());
|
builder.field(Fields.PUBLISH_ADDRESS, address.publishAddress().toString());
|
||||||
|
builder.field(Fields.MAX_CONTENT_LENGTH, new ByteSizeValue(maxContentLength));
|
||||||
|
builder.field(Fields.MAX_CONTENT_LENGTH_IN_BYTES, maxContentLength);
|
||||||
builder.endObject();
|
builder.endObject();
|
||||||
return builder;
|
return builder;
|
||||||
}
|
}
|
||||||
|
@ -68,11 +75,13 @@ public class HttpInfo implements Streamable, Serializable, ToXContent {
|
||||||
@Override
|
@Override
|
||||||
public void readFrom(StreamInput in) throws IOException {
|
public void readFrom(StreamInput in) throws IOException {
|
||||||
address = BoundTransportAddress.readBoundTransportAddress(in);
|
address = BoundTransportAddress.readBoundTransportAddress(in);
|
||||||
|
maxContentLength = in.readLong();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeTo(StreamOutput out) throws IOException {
|
public void writeTo(StreamOutput out) throws IOException {
|
||||||
address.writeTo(out);
|
address.writeTo(out);
|
||||||
|
out.writeLong(maxContentLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
public BoundTransportAddress address() {
|
public BoundTransportAddress address() {
|
||||||
|
@ -82,4 +91,12 @@ public class HttpInfo implements Streamable, Serializable, ToXContent {
|
||||||
public BoundTransportAddress getAddress() {
|
public BoundTransportAddress getAddress() {
|
||||||
return address();
|
return address();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ByteSizeValue maxContentLength() {
|
||||||
|
return new ByteSizeValue(maxContentLength);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ByteSizeValue getMaxContentLength() {
|
||||||
|
return maxContentLength();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -104,7 +104,7 @@ public class HttpServer extends AbstractLifecycleComponent<HttpServer> {
|
||||||
}
|
}
|
||||||
|
|
||||||
public HttpInfo info() {
|
public HttpInfo info() {
|
||||||
return new HttpInfo(transport.boundAddress());
|
return transport.info();
|
||||||
}
|
}
|
||||||
|
|
||||||
public HttpStats stats() {
|
public HttpStats stats() {
|
||||||
|
|
|
@ -29,6 +29,8 @@ public interface HttpServerTransport extends LifecycleComponent<HttpServerTransp
|
||||||
|
|
||||||
BoundTransportAddress boundAddress();
|
BoundTransportAddress boundAddress();
|
||||||
|
|
||||||
|
HttpInfo info();
|
||||||
|
|
||||||
HttpStats stats();
|
HttpStats stats();
|
||||||
|
|
||||||
void httpServerAdapter(HttpServerAdapter httpServerAdapter);
|
void httpServerAdapter(HttpServerAdapter httpServerAdapter);
|
||||||
|
|
|
@ -275,6 +275,11 @@ public class NettyHttpServerTransport extends AbstractLifecycleComponent<HttpSer
|
||||||
return this.boundAddress;
|
return this.boundAddress;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public HttpInfo info() {
|
||||||
|
return new HttpInfo(boundAddress(), maxContentLength.bytes());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public HttpStats stats() {
|
public HttpStats stats() {
|
||||||
OpenChannelsHandler channels = serverOpenChannels;
|
OpenChannelsHandler channels = serverOpenChannels;
|
||||||
|
|
Loading…
Reference in New Issue