怎么做装修网站平台代理公司注册要提供什么资料

web/2025/10/4 9:09:22/文章来源:
怎么做装修网站平台,代理公司注册要提供什么资料,九龙坡集团网站建设,官网服务器一般一年多少钱在此博客中#xff0c;我将解释如何为您的Mule CloudHub应用程序启用AWS Cloudwatch日志 。 AWS提供了Cloudwatch Logs Services#xff0c;以便您可以更好地管理日志。 它比松散便宜。 由于cloudhub会自动翻转超过100 MB的日志#xff0c;因此我们需要一种机制来更有效地管… 在此博客中我将解释如何为您的Mule CloudHub应用程序启用AWS Cloudwatch日志 。 AWS提供了Cloudwatch Logs Services以便您可以更好地管理日志。 它比松散便宜。 由于cloudhub会自动翻转超过100 MB的日志因此我们需要一种机制来更有效地管理日志。 为此我们创建了这个自定义附加程序它将日志发送到cloudwatch。 package com.javaroots.appenders;import static java.util.Comparator.comparing; import static java.util.stream.Collectors.toList;import java.io.Serializable; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Formatter; import java.util.List; import java.util.Optional; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicReference;import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.Filter; import org.apache.logging.log4j.core.Layout; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.appender.AbstractAppender; import org.apache.logging.log4j.core.config.plugins.Plugin; import org.apache.logging.log4j.core.config.plugins.PluginAttribute; import org.apache.logging.log4j.core.config.plugins.PluginElement; import org.apache.logging.log4j.core.config.plugins.PluginFactory; import org.apache.logging.log4j.status.StatusLogger;import com.amazonaws.regions.Regions; import com.amazonaws.services.logs.AWSLogs; import com.amazonaws.services.logs.model.CreateLogGroupRequest; import com.amazonaws.services.logs.model.CreateLogStreamRequest; import com.amazonaws.services.logs.model.CreateLogStreamResult; import com.amazonaws.services.logs.model.DataAlreadyAcceptedException; import com.amazonaws.services.logs.model.DescribeLogGroupsRequest; import com.amazonaws.services.logs.model.DescribeLogStreamsRequest; import com.amazonaws.services.logs.model.InputLogEvent; import com.amazonaws.services.logs.model.InvalidSequenceTokenException; import com.amazonaws.services.logs.model.LogGroup; import com.amazonaws.services.logs.model.LogStream; import com.amazonaws.services.logs.model.PutLogEventsRequest; import com.amazonaws.services.logs.model.PutLogEventsResult;Plugin(name CLOUDW, category Core, elementType appender, printObject true) public class CloudwatchAppender extends AbstractAppender {/*** */private static final long serialVersionUID 12321345L;private static Logger logger2 LogManager.getLogger(CloudwatchAppender.class);private final Boolean DEBUG_MODE System.getProperty(log4j.debug) ! null;/*** Used to make sure that on close() our daemon thread isnt also trying to sendMessage()s*/private Object sendMessagesLock new Object();/*** The queue used to buffer log entries*/private LinkedBlockingQueue loggingEventsQueue;/*** the AWS Cloudwatch Logs API client*/private AWSLogs awsLogsClient;private AtomicReference lastSequenceToken new AtomicReference();/*** The AWS Cloudwatch Log group name*/private String logGroupName;/*** The AWS Cloudwatch Log stream name*/private String logStreamName;/*** The queue / buffer size*/private int queueLength 1024;/*** The maximum number of log entries to send in one go to the AWS Cloudwatch Log service*/private int messagesBatchSize 128;private AtomicBoolean cloudwatchAppenderInitialised new AtomicBoolean(false);private CloudwatchAppender(final String name,final Layout layout,final Filter filter,final boolean ignoreExceptions,String logGroupName, String logStreamName,Integer queueLength,Integer messagesBatchSize) {super(name, filter, layout, ignoreExceptions);this.logGroupName logGroupName;this.logStreamName logStreamName;this.queueLength queueLength;this.messagesBatchSize messagesBatchSize;this.activateOptions();}Overridepublic void append(LogEvent event) {if (cloudwatchAppenderInitialised.get()) {loggingEventsQueue.offer(event);} else {// just do nothing}}public void activateOptions() {if (isBlank(logGroupName) || isBlank(logStreamName)) {logger2.error(Could not initialise CloudwatchAppender because either or both LogGroupName( logGroupName ) and LogStreamName( logStreamName ) are null or empty);this.stop();} else {//below lines work with aws version 1.9.40 for local build//this.awsLogsClient new AWSLogsClient();//awsLogsClient.setRegion(Region.getRegion(Regions.AP_SOUTHEAST_2));this.awsLogsClient com.amazonaws.services.logs.AWSLogsClientBuilder.standard().withRegion(Regions.AP_SOUTHEAST_2).build();loggingEventsQueue new LinkedBlockingQueue(queueLength);try {initializeCloudwatchResources();initCloudwatchDaemon();cloudwatchAppenderInitialised.set(true);} catch (Exception e) {logger2.error(Could not initialise Cloudwatch Logs for LogGroupName: logGroupName and LogStreamName: logStreamName, e);if (DEBUG_MODE) {System.err.println(Could not initialise Cloudwatch Logs for LogGroupName: logGroupName and LogStreamName: logStreamName);e.printStackTrace();}}}}private void initCloudwatchDaemon() {Thread t new Thread(() - {while (true) {try {if (loggingEventsQueue.size() 0) {sendMessages();}Thread.currentThread().sleep(20L);} catch (InterruptedException e) {if (DEBUG_MODE) {e.printStackTrace();}}}});t.setName(CloudwatchThread);t.setDaemon(true);t.start();}private void sendMessages() {synchronized (sendMessagesLock) {LogEvent polledLoggingEvent;final Layout layout getLayout();List loggingEvents new ArrayList();try {while ((polledLoggingEvent loggingEventsQueue.poll()) ! null loggingEvents.size() messagesBatchSize) {loggingEvents.add(polledLoggingEvent);}List inputLogEvents loggingEvents.stream().map(loggingEvent - new InputLogEvent().withTimestamp(loggingEvent.getTimeMillis()).withMessage(layout null ?loggingEvent.getMessage().getFormattedMessage():new String(layout.toByteArray(loggingEvent), StandardCharsets.UTF_8))).sorted(comparing(InputLogEvent::getTimestamp)).collect(toList());if (!inputLogEvents.isEmpty()) {PutLogEventsRequest putLogEventsRequest new PutLogEventsRequest(logGroupName,logStreamName,inputLogEvents);try {putLogEventsRequest.setSequenceToken(lastSequenceToken.get());PutLogEventsResult result awsLogsClient.putLogEvents(putLogEventsRequest);lastSequenceToken.set(result.getNextSequenceToken());} catch (DataAlreadyAcceptedException dataAlreadyAcceptedExcepted) {putLogEventsRequest.setSequenceToken(dataAlreadyAcceptedExcepted.getExpectedSequenceToken());PutLogEventsResult result awsLogsClient.putLogEvents(putLogEventsRequest);lastSequenceToken.set(result.getNextSequenceToken());if (DEBUG_MODE) {dataAlreadyAcceptedExcepted.printStackTrace();}} catch (InvalidSequenceTokenException invalidSequenceTokenException) {putLogEventsRequest.setSequenceToken(invalidSequenceTokenException.getExpectedSequenceToken());PutLogEventsResult result awsLogsClient.putLogEvents(putLogEventsRequest);lastSequenceToken.set(result.getNextSequenceToken());if (DEBUG_MODE) {invalidSequenceTokenException.printStackTrace();}}}} catch (Exception e) {if (DEBUG_MODE) {logger2.error( error inserting cloudwatch:,e);e.printStackTrace();}}}}private void initializeCloudwatchResources() {DescribeLogGroupsRequest describeLogGroupsRequest new DescribeLogGroupsRequest();describeLogGroupsRequest.setLogGroupNamePrefix(logGroupName);Optional logGroupOptional awsLogsClient.describeLogGroups(describeLogGroupsRequest).getLogGroups().stream().filter(logGroup - logGroup.getLogGroupName().equals(logGroupName)).findFirst();if (!logGroupOptional.isPresent()) {CreateLogGroupRequest createLogGroupRequest new CreateLogGroupRequest().withLogGroupName(logGroupName);awsLogsClient.createLogGroup(createLogGroupRequest);}DescribeLogStreamsRequest describeLogStreamsRequest new DescribeLogStreamsRequest().withLogGroupName(logGroupName).withLogStreamNamePrefix(logStreamName);Optional logStreamOptional awsLogsClient.describeLogStreams(describeLogStreamsRequest).getLogStreams().stream().filter(logStream - logStream.getLogStreamName().equals(logStreamName)).findFirst();if (!logStreamOptional.isPresent()) {CreateLogStreamRequest createLogStreamRequest new CreateLogStreamRequest().withLogGroupName(logGroupName).withLogStreamName(logStreamName);CreateLogStreamResult o awsLogsClient.createLogStream(createLogStreamRequest);}}private boolean isBlank(String string) {return null string || string.trim().length() 0;}protected String getSimpleStacktraceAsString(final Throwable thrown) {final StringBuilder stackTraceBuilder new StringBuilder();for (StackTraceElement stackTraceElement : thrown.getStackTrace()) {new Formatter(stackTraceBuilder).format(%s.%s(%s:%d)%n,stackTraceElement.getClassName(),stackTraceElement.getMethodName(),stackTraceElement.getFileName(),stackTraceElement.getLineNumber());}return stackTraceBuilder.toString();}Overridepublic void start() {super.start();}Overridepublic void stop() {super.stop();while (loggingEventsQueue ! null !loggingEventsQueue.isEmpty()) {this.sendMessages();}}Overridepublic String toString() {return CloudwatchAppender.class.getSimpleName() { name getName() loggroupName logGroupName logstreamName logStreamName;}PluginFactorySuppressWarnings(unused)public static CloudwatchAppender createCloudWatchAppender(PluginAttribute(value queueLength ) Integer queueLength,PluginElement(Layout) Layout layout,PluginAttribute(value logGroupName) String logGroupName,PluginAttribute(value logStreamName) String logStreamName,PluginAttribute(value name) String name,PluginAttribute(value ignoreExceptions, defaultBoolean false) Boolean ignoreExceptions,PluginAttribute(value messagesBatchSize) Integer messagesBatchSize){return new CloudwatchAppender(name, layout, null, ignoreExceptions, logGroupName, logStreamName ,queueLength,messagesBatchSize);} } 我们在pom.xml文件中添加依赖项。 dependencygroupIdcom.amazonaws/groupIdartifactIdaws-java-sdk-logs/artifactId!-- for local 3.8.5 we need to use this version cloudhub 3.8.5 has jackson 2.6.6 --!-- version1.9.40/version --version1.11.105/versionexclusionsexclusion !-- declare the exclusion here --groupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-1.2-api/artifactId/exclusionexclusion !-- declare the exclusion here --groupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-core/artifactId/exclusionexclusion !-- declare the exclusion here --groupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactId/exclusion/exclusions/dependency!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api --dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-api/artifactIdversion2.5/version/dependency!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core --dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-core/artifactIdversion2.5/version/dependency 现在我们需要修改我们的log4j2.xml。 还要添加自定义cloudwatch附加程序和CloudhubLogs附加程序以便我们也可以获取cloudhub上的日志。 ?xml version1.0 encodingutf-8? Configuration statustrace packagesau.edu.vu.appenders,com.mulesoft.ch.logging.appender!--These are some of the loggers you can enable. There are several more you can find in the documentation. Besides this log4j configuration, you can also use Java VM environment variablesto enable other logs like network (-Djavax.net.debugssl or all) and Garbage Collector (-XX:PrintGC). These will be append to the console, so you will see them in the mule_ee.log file. --AppendersCLOUDW nameCloudW logGroupNametest-log-stream logStreamNametest44 messagesBatchSize${sys:cloudwatch.msg.batch.size} queueLength${sys:cloudwatch.queue.length}PatternLayout pattern%d [%t] %-5p %c - %m%n//CLOUDWLog4J2CloudhubLogAppender nameCLOUDHUBaddressProvidercom.mulesoft.ch.logging.DefaultAggregatorAddressProviderapplicationContextcom.mulesoft.ch.logging.DefaultApplicationContextappendRetryIntervalMs${sys:logging.appendRetryInterval}appendMaxAttempts${sys:logging.appendMaxAttempts}batchSendIntervalMs${sys:logging.batchSendInterval}batchMaxRecords${sys:logging.batchMaxRecords}memBufferMaxSize${sys:logging.memBufferMaxSize}journalMaxWriteBatchSize${sys:logging.journalMaxBatchSize}journalMaxFileSize${sys:logging.journalMaxFileSize}clientMaxPacketSize${sys:logging.clientMaxPacketSize}clientConnectTimeoutMs${sys:logging.clientConnectTimeout}clientSocketTimeoutMs${sys:logging.clientSocketTimeout}serverAddressPollIntervalMs${sys:logging.serverAddressPollInterval}serverHeartbeatSendIntervalMs${sys:logging.serverHeartbeatSendIntervalMs}statisticsPrintIntervalMs${sys:logging.statisticsPrintIntervalMs}PatternLayout pattern[%d{MM-dd HH:mm:ss}] %-5p %c{1} [%t] CUSTOM: %m%n//Log4J2CloudhubLogAppender/AppendersLoggers!-- Http Logger shows wire traffic on DEBUG --AsyncLogger nameorg.mule.module.http.internal.HttpMessageLogger levelWARN/!-- JDBC Logger shows queries and parameters values on DEBUG --AsyncLogger namecom.mulesoft.mule.transport.jdbc levelWARN/!-- CXF is used heavily by Mule for web services --AsyncLogger nameorg.apache.cxf levelWARN/!-- Apache Commons tend to make a lot of noise which can clutter the log--AsyncLogger nameorg.apache levelWARN/!-- Reduce startup noise --AsyncLogger nameorg.springframework.beans.factory levelWARN/!-- Mule classes --AsyncLogger nameorg.mule levelINFO/AsyncLogger namecom.mulesoft levelINFO/!-- Reduce DM verbosity --AsyncLogger nameorg.jetel levelWARN/AsyncLogger nameTracking levelWARN/AsyncRoot levelINFOAppenderRef refCLOUDHUB levelINFO/AppenderRef refCloudW levelINFO//AsyncRoot/Loggers /Configuration 最后我们需要在cloudhub运行时管理器上禁用cloudhub日志。 这适用于cloudhub mule运行时版本3.8.4。 cloudhub 3.8.5版本存在一些问题该版本已正确初始化并发送日志但是缺少事件和消息。 翻译自: https://www.javacodegeeks.com/2017/10/integrate-cloudwatch-logs-cloudhub-mule.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/86703.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

多语言网站 推广网站建设语音

配置路由式Proxy ARP示例 组网图形 图1 配置路由式Proxy ARP组网图 路由式Proxy ARP简介配置注意事项组网需求配置思路操作步骤配置文件 路由式Proxy ARP简介 企业内部进行子网划分时,可能会出现两个子网网络属于同一网段,但是却不属于同一物理网络的情…

网站建设管理属于职业资格吗wordpress模板dux

大家好!作为专业吃鸡行家,我将为您带来一些热门话题和实用内容,帮助您提升游戏战斗力,分享顶级游戏作战干货,并提供便捷的作图工具和查询服务。让我们一起享受吃鸡的乐趣! 首先,我要推荐一款绝地…

快钱支付需要网站备案吗小程序制作方案

羊大师分析,夏季羊奶的适合人群有哪些? 夏季羊奶的适合人群相当广泛,主要包括以下几类人群: 生长发育中的孩子:羊奶富含营养,特别是蛋白质和矿物质,对孩子的生长发育有积极的促进作用。 中老年…

扁平化 公司网站南通公司快速建站

今天测试部门的人叫我过去,说是数据库当了,起不来了。我过去看了看情况,做了如下操作SQL> shutdown immediate数据库已经关闭。已经卸载数据库。Oracle 例程已经关闭。SQL> startupORACLE 例程已经启动。Total System Global Area 135…

榆次住房保障和城乡建设局网站免费简单网站

软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书&#xff0…

全屋定制十大品牌排行榜济南网站seo报价

介绍Gogs项目旨在构建一种简单,稳定和可扩展的自托管Git服务,该服务可以通过最轻松的方式进行设置。使用Go语言开发的git自托管服务,部署十分简单,可以在Go支持的所有平台(包括Linux,macOS,Windows和ARM)上…

自微网站如何做好品牌宣传

在数字化时代的到来之后,虚拟货币逐渐成为了一种广为人知的金融工具。虚拟货币是一种数字化的资产,它不像传统货币那样由政府或中央银行发行和监管。相反,虚拟货币通过密码学技术和分布式账本技术来实现去中心化的发行和交易。 虚拟货币的代…

博客wordpress企业网站搭建及优化

fork/join和线程池问题: 启用了Spring且其范围设置为Request的缓存需要由不在请求范围内的singleton bean访问。 解: Spring使您能够创建缓存,该缓存为请求范围保留数据。 例如 import org.springframework.cache.concurrent.ConcurrentMapC…

宁波网站制作定制互联网广告营销是什么

阅读目录 1.理解VUE中的自定义指令回到顶部1.理解VUE中的自定义指令 默认核心指令有 (v-model 和 v-show), 但是有时候我们需要用到自定义指令,在vue中,代码复用主要形式和抽象是组件,但是在有的情况下,我们仍然需要对DOM元素进行…

做网站建设的好处家具网站php源码

常见的最小二乘法我们就不多说了,下面主要介绍一下最小二乘法的一些先进方法。 正则化的最小二乘法 在使用常见的最小二乘法进行回归分析时,常常会遇到过拟合的问题,也就是在训练数据集上表现的很好,但是在测试数据集上表现的很…

关于建设殡葬网站的报告范文wordpress 工具栏图标

看图的时候喜欢在图上直接标注意见,但是如果还要再把意见一行一行的导出到word里面就很麻烦,在网上看了一个审图软件,报价要980,而且那个审图意见做的太复杂了。 我的需求就是把图上标的单行文字和多行文字直接导出来就行&#x…

网站开发与网站设计区别营销网站建设文章

文章转载于微信公众号机器之能(ID:almosthuman2017)来源:纽约时报杂志 编译:张震、Edison、Rik“编者按”:纽约时报的这篇区块链文章探讨到核心的问题了,互联网应用层分布式架构(区块…

菏泽网站建设费用低价建站在哪里买

最近,有网友反映,我的批量查字典工具换到其它的网站就不好用了。对此,我想说的是,互联网包罗万象,网站的各种设置也有所不同,并不是所有的在线字典都可以用Python爬取的。事实上,很多网站为了防…

qq浏览器在线郑州网站优化公司哪家好

jeffies hz xtime 每秒钟系统时钟节拍数 prco < 内核内存视窗 include/linux/list.h < 内核的数据结构&#xff0c;链表 workques_struct 工作队列转载于:https://www.cnblogs.com/asreg/p/7148606.html

个人备案网站能做什么如何给网站增加外链

输出各位数字之和能被15整除的所有数 输出100到1000之间的各位数字之和能被15整除的所有数&#xff0c;输出时每5个一行&#xff0c;每个数输出占4列列宽。 public class Day5 {public static void main(String[] args) {int t,flag0;for(int i100;i<1000;i){t (i/100)(i…

5千ip的网站能赚多少钱现在如何给网站做外链

获取深度和法线纹理 背后的原理 深度纹理是一张渲染纹理,它里面存储的像素值不是颜色,而是一个高精度的深度值。深度值范围是[0, 1],非线性分布的。这些深度值来自于顶点变换后得到的归一化的设备坐标(NDC)。一个模型想要被绘制在屏幕上,需要把它的顶点从模型空间变换到齐…

站内站怎么搭建wordpress安装主题

全世界只有3.14 % 的人关注了青少年数学之旅一个只能用算力来破解的加密算法1人类的加密史公元前5世纪&#xff0c;古希腊人使用一根叫scytale的棍子来传递加密信息。要加密时&#xff0c;先绕棍子卷一张纸条&#xff0c;把信息沿棒水平方向写&#xff0c;写一个字旋转一下&…

汽配人网做网站检察院内部网站升级建设

https://segmentfault.com/q/1010000009184137?_ea1845711 webstorm 不知道手贱点了什么&#xff0c;有时候会自动删除分号 webstorm javascript 繁忙的耗子 4月25日提问关注 4 关注收藏 0 收藏&#xff0c;470 浏览问题对人有帮助&#xff0c;内容完整&#xff0c;我也想…

怎么让网站文章被收录网站开发公司小程序开发

链接&#xff1a;https://www.nowcoder.com/acm/contest/135/C来源&#xff1a;牛客网 题目描述 其中&#xff0c;f(1)1;f(2)1;Z皇后的方案数&#xff1a;即在ZZ的棋盘上放置Z个皇后&#xff0c;使其互不攻击的方案数。 输入描述: 输入数据共一行&#xff0c;两个正整数x,m&am…

免费建设商城网站最优的手机网站建设

大家对工作的渴望我感同身受&#xff0c;有人去机器视觉培训机构培训&#xff0c;有人默默无闻地努力学习&#xff0c;不都是为了一份高新好工作吗&#xff1f; 实际上是&#xff1a; 技术高的人&#xff0c;劳动力贬值。 技术低的人&#xff0c;没有生存空间。 你有野心&…