同步操作将从 sulayman_tien/poco 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
//// MetricsRequestHandler.cpp//// Library: Prometheus// Package: HTTP// Module: MetricsRequestHandler//// Copyright (c) 2022, Applied Informatics Software Engineering GmbH.// and Contributors.//// SPDX-License-Identifier: BSL-1.0//#include "Poco/Prometheus/MetricsRequestHandler.h"#include "Poco/Prometheus/Registry.h"#include "Poco/Prometheus/TextExporter.h"#include "Poco/Net/HTTPServerRequest.h"#include "Poco/Net/HTTPServerResponse.h"#include "Poco/DeflatingStream.h"using namespace std::string_literals;namespace Poco {namespace Prometheus {MetricsRequestHandler::MetricsRequestHandler():_registry(Registry::defaultRegistry()){}MetricsRequestHandler::MetricsRequestHandler(const Registry& registry):_registry(registry){}void MetricsRequestHandler::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::Net::HTTPServerResponse& response){if (request.getMethod() == Poco::Net::HTTPRequest::HTTP_GET || request.getMethod() == Poco::Net::HTTPRequest::HTTP_HEAD){response.setChunkedTransferEncoding(true);response.setContentType("text/plain; version=0.0.4"s);bool compressResponse(request.hasToken("Accept-Encoding"s, "gzip"s));if (compressResponse) response.set("Content-Encoding"s, "gzip"s);response.set("Cache-Control"s, "no-cache, no-store"s);std::ostream& plainResponseStream = response.send();if (request.getMethod() == Poco::Net::HTTPRequest::HTTP_GET){Poco::DeflatingOutputStream gzipStream(plainResponseStream, Poco::DeflatingStreamBuf::STREAM_GZIP, 1);std::ostream& responseStream = compressResponse ? gzipStream : plainResponseStream;TextExporter exporter(responseStream);_registry.exportTo(exporter);}}else{response.setStatusAndReason(Poco::Net::HTTPResponse::HTTP_METHOD_NOT_ALLOWED);response.setContentLength(0);response.send();}}} } // namespace Poco::Prometheus
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。