Flink on Yarn 日志输出

Flink使用logback须知 Flink使用logback作为日志框架的相关配置 一、client端pom文件配置 <dependencies> <!-- Add the two required logback dependencies --> <dependency> <groupId>ch.qos.logback</groupId&gt... 阅读详情

Flink on Yarn 模式下,业务应用内部配置的 logback.xml/log4j.properties 是无法加载的,Flink 会默认采用安装目录下的 $FLINK_HOME/logback.xml/log4j.properties 作为统一的 logger 定义文件。
 Flink 提供的 logback.xml/log4j.properties 只配置了 rootLogger,如果不加修改,集群上面运行的所有作业日志都将输出到 rootLogger 指向的目录。随着时间的增长日志量会很大,加载会非常慢甚至直接导致页面挂掉。

因此可以通过修改 $FLINK_HOME/conf/logback.xml 文件的方式对日志进行定制(官方推荐使用logback.xml)。

一、实现步骤:

1、修改 $FLINK_HOME/conf/logback.xml

指定 Appender 为 RollingFileAppender,配置你想要的滚动策略(这里只做示例,具体配置根据需求定制)。

<!--
 ~ Licensed to the Apache Software Foundation (ASF) under one
 ~ or more contributor license agreements. See the NOTICE file
 ~ distributed with this work for additional information
 ~ regarding copyright ownership. The ASF licenses this file
 ~ to you under the Apache License, Version 2.0 (the
 ~ "License"); you may not use this file except in compliance
 ~ with the License. You may obtain a copy of the License at
 ~
 ~ http://www.apache.org/licenses/LICENSE-2.0
 ~
 ~ Unless required by applicable law or agreed to in writing, software
 ~ distributed under the License is distributed on an "AS IS" BASIS,
 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 ~ See the License for the specific language governing permissions and
 ~ limitations under the License.
 -->

<configuration>
 <!-- 按照每日滚动的方式生成日志文件 -->
 <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
 <file>${log.file}</file>
 <append>false</append>
 <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
 <!-- 日志按天滚动 -->
 <fileNamePattern>${log.file}_%d{yyyy-MM-dd}.%i</fileNamePattern>
 <!-- 每个文件最大50MB, 保留7天的历史日志, 最多保留2GB -->
 <maxFileSize>50MB</maxFileSize>
 <maxHistory>7</maxHistory>
 <totalSizeCap>2GB</totalSizeCap>
 </rollingPolicy>
 <encoder>
 <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{60} %X{sourceThread} - %msg%n</pattern>
 </encoder>
 </appender>

 <!-- This affects logging for both user code and Flink -->
 <root level="INFO">
 <appender-ref ref="file"/>
 </root>

 <!-- Uncomment this if you want to only change Flink's logging -->
 <!--<logger name="org.apache.flink" level="INFO">-->
 <!--<appender-ref ref="file"/>-->
 <!--</logger>-->

 <!-- The following lines keep the log level of common libraries/connectors on
 log level INFO. The root logger does not override this. You have to manually
 change the log levels here. -->
 <logger name="akka" level="INFO">
 <appender-ref ref="file"/>
 </logger>
 <logger name="org.apache.kafka" level="INFO">
 <appender-ref ref="file"/>
 </logger>
 <logger name="org.apache.hadoop" level="INFO">
 <appender-ref ref="file"/>
 </logger>
 <logger name="org.apache.zookeeper" level="INFO">
 <appender-ref ref="file"/>
 </logger>

 <!-- Suppress the irrelevant (wrong) warnings from the Netty channel handler -->
 <logger name="org.apache.flink.shaded.akka.org.jboss.netty.channel.DefaultChannelPipeline" level="ERROR">
 <appender-ref ref="file"/>
 </logger>
</configuration>

2、添加 logback.xml 依赖的jar包(注意版本号与实际使用一致)

    添加 log4j-over-slf4j-1.7.25.jar,logback-classic-1.2.3.jar, logback-core-1.2.3.jar 到 $FLINK_HOME/lib 路径下。

此时,配置已经完成。按正常程序启动 flink 任务即可。

二、注意事项

    1、该方式只适用于单任务单集群部署方式。

    2、$FLINK_HOME/lib/ 下的logback 相关jar 需要与业务项目中logback jar包版本一致。

Flink系列三:Flink架构、独立集群搭建及Flink on YARN模式详解 Flink架构,Flink独立集群搭建与使用,Flink on yarn的三种部署模式(Application,Per-Job Cluster,Session ) 阅读详情

相关推荐

flink yarn模式提交及查看日志

一、Yarn session(一般测试环境) yarn session会初始启动指定的tm数量。 job提交后再指定的session 内运行。 其它job运行,如果资源不够,就会一直等待直到占用的job运行完毕释放资源。jm所有job共享 1 在任意几点启动yarn-session: 下述属性启动4个任务管理器。 每个任务管理器占用1024M内存,且每任务管理器分配2个SLO...

peidezhi的专栏 1万+

Flink1.11.2 on YARN滚动日志配置

Flink1.11 on Yarn默认日志是log4j MainAppender非滚动的。如果是流式任务,任务就会常驻,这样日志文件会越来越大(尤其是Task Managers日志),不加处理磁盘空间就会越占越大,页面日志加载响应也会卡顿。所以可以对Flink的日志做一个滚动配置,这样就可以控制日志文件大小。 flink on yarn用的log配置默认是flink/conf/log4j.properties配置文件,可修改为: # 滚动日志的配置 # This affects logging fo.

仙道Bob的专栏 2017

Flink 1.13 cdc 任务 on yarn 日志查询详解

目录 一,正常部署之后,flink on yarn 任务查看 二,shell命令查看具体日志 三,开启historyserver 四,使用yarn的restfulApi查看信息 五,总结: 一,正常部署之后,flink on yarn 任务查看 1,正在运行任务: 2,杀死任务之后: 3,我们点击History按钮 进入页面: 这并不是我们想要的效果,so,我们要看看具体的操作。 二,shell命令查看具体日志 在shell命令执行:..

qq_31866793的博客 5347

Flink 本地运行日志配置

在 src/main/resources 中添加 log4j.properties 文件: 方法二: 使用 logback.xml 在 src/main/resources 中添加 logback.xml 文件: 修改 pom.xml 配置 在引入flink相关依赖之前引入logback相关依赖,如下:

qq_32323239的博客 2366

Flink on Yarn启动流程分析

HBase BlockCache知识点铺垫 为后面继续梳理BlockCache的核心内容,在此先铺垫一下相关的知识点: BlockCache接口 BlockType BlockCacheKey, Cacheable键值对 CacheStats BlockCache实现 BlockCache接口 从图中可以看出BlockCache接口关心的内容 oper...

Han.启书的博客 2368

flink on yarn、资源及状态管理

flink源码学习: http://www.cnblogs.com/bethunebtj/p/9168274.html flink on yarn 执行任务的两种方式 1.yarn-session.sh(开辟资源)+flink run(提交任务) 1.在yarn中起一个守护进程,用于启动多个job,即一个application master 管理多个job 2.启动命令: ./yarn...

mapeng765441650的博客 5649

Flink on yarn日志输出

Flink on yarn日志输出-终极方案 题主在做flink实时流时,一直不能在flink web上打印出日志,百思不得其解,想找到相应的日志文件,却也没找到,查阅了大量资料以及通过自己的实践,总算搞明白了flink on yarn的日志输出,这里写一篇文章,以此来记录。 首先,我们在看flink的日志输出时,要先明白flink/conf下面的日志配置文件的作用。 log4j-cli.pro...

初学者 1万+

flink1.12配置滚动日志(超详细)

flink 1.12 配置滚动日志

张小小凡 1212

Flink on Yarn 日志存储位置

有时我们的flink作业中打印太多日志(可能GB级别),在flink job web上加载就会很慢,这时我们想找到job输出的文件存放在哪个节点的目录下,并直接去查看日志文件,但是怎么找呢,来吧我们看下,我有个场景,flink作业中使用System.out.print输出了很多日志,导致在flink job web上加载就很慢,下载该日志时提示有15G,所以干脆不要下载了。我们查看下flink on yarn的作业启动输出信息,找下它的任务在哪几个节点跑,并且找到日志位置信息,我们打开它的yarn任务界面

qq_32068809的博客 5190

Flink在YARN上的日志滚动配置

总结一下,Flink在YARN上的日志滚动配置是非常重要的一项设置,它能够帮助我们更好地管理和维护流处理应用程序的日志。通过对Flink的配置文件进行相应的修改,并在代码中启用滚动策略,我们可以轻松地实现日志滚动功能。当我们在使用Flink时,经常会遇到需要配置Flink在YARN上的日志滚动策略的情况。首先,我们需要在Flink的配置文件中指定日志的滚动策略。通过以上的配置和代码,我们就可以在Flink on YARN中实现日志滚动的功能了。这样可以使得日志文件更加整洁,方便我们对日志进行查阅和管理。

2301_79366435的博客 515

地图坐标系大全:常用地图坐标系详解与转换指南

地图坐标系是用于描述地图上位置的数学模型。它可以用来表示地球表面上的任意一个点,使得这个点的位置可以在地图上精确定位。不同的地图坐标系采用不同的基准面和投影方式,因此会有不同的坐标系参数,不同的坐标系之间也需要进行坐标转换。在地图制图、导航、GIS等领域中,地图坐标系是一个非常重要的概念。

weixin_39888010的博客 1万+

flink升级到1.12以后,能提交yarn任务,但不显示日志

1.删除flink1.12/lib/下的log4j-开头的4个jar包 2.从maven仓库下载log4j-1.2.17.jar和slf4j-log4j12-1.7.16.jar,并拷贝到flink1.12/lib下 3.授权flink1.12/lib下所有jar包可执行文件 4.日志级别修改conf/log4j-cli.properties文件,建议使用INFO ...

weixin_38203586的博客 1796

解放双手:用KUKA示教器白键一键触发复杂工艺,自定义你的快捷指令

本文详细介绍了如何利用KUKA示教器的工艺白键功能,通过自定义快捷指令一键触发复杂工艺,显著提升自动化产线效率。文章涵盖UserTech技术栈解析、KRL脚本封装、人机交互视觉工程及工业实战策略,帮助工程师实现机械臂操作的高阶优化。

weixin_30379531的博客 432

SLF4J不输出日志 StaticLoggerBinder UnsupportedClassVersionError

在 logger 实例化时 static Logger logger = LoggerFactory.getLogger(TestLog.class),就需要注意引用的哪个包的logger,各种组件可能都引用了自己的日志组件,就可能出现版本冲突的情况,导致日志输出异常。提示需要加入 slf4j-nop.jar slf4j-simple.jar, slf4j-log4j12.jar, slf4j-jdk14.jar or logback-classic.jar 依赖,按要求加入依赖还是一样提示错误。

yueeryuanyi的博客 723

Multisim 14.0实战:从零搭建可调幅多波形信号发生器(附仿真文件)

本文详细介绍了如何在Multisim 14.0中从零搭建一个可调幅多波形信号发生器,涵盖方波、三角波和正弦波的生成原理与实现步骤。通过核心电路架构解析、关键参数设计及Multisim实战操作,帮助电子工程学习者和硬件工程师掌握信号发生器的设计与调试技巧,并提供仿真文件供实践验证。

nokia的博客 1073

VS2010“未能正确加载包”问题解决方法小汇

本文按照由简至繁的顺序详述了借助网络获知的四种解法,主要面向重装 VS2010 后遭遇题述问题的网友,相关包尤指 VSTS、RadLangSvc、Language、Bootstrap 及 MicrosoftDataEntityDesign。

虚有其表的博客 1万+

Flink on yarn遇到的问题

Flink版本:flink-1.9.1 下载地址:https://flink.apache.org/downloads.html 我是分开部署的,部署了hadoop 3.1.2 所以下载 两个文件Apache Flink 1.9.1 for Scala 2.12和Pre-bundled Hadoop 2.8.3(一个jar包) 官方文档:https://ci.apache.org/...

1万+

AWS DevOps Agent 完全指南

AI 驱动的 SRE 队友,7×24 自主调查告警、定位根因、生成修复方案、预防未来故障。

探索云原生与智能化驱动下的安全运维新范式。关注DevSecOps、可观测性、AIOps等前沿领域,与您共赴技术前沿。 381

Flink配置Yarn日志聚合、配置历史日志。

yarn容器退出之后,默认是不保存日志的。所以需要开启JobHistoryServer. 无论Flink还是Spark都支持自建集群(standalone cluster)。但是为了保证稳定性和资源隔离等,生产环境里的任务最好借助资源管理框架(如Yarn)运行。 任务运行在yarn上,查询日志就可能不是很方便,尤其是任务进程异常退出之后。 ..................

myself_ning的博客 6872

爬虫不宕机!2026自愈式爬虫开发(Python+AI自动应对页面改版)

传统爬虫最大的痛点是"页面一改就宕机":前端布局调整、CSS选择器失效、数据结构变化,都会导致爬虫瘫痪,需要人工逐行修改代码。2026年,基于AI的自愈式爬虫成为行业标配:通过大模型自动识别页面结构变化、适配新的元素定位规则、修复数据提取逻辑,实现"页面改版不宕机,AI自动自愈"的企业级效果。本文从零讲解如何用Python+AI构建自愈式爬虫,聚焦页面改版自适应、故障自动修复、规则动态更新三大核心能力,附带可直接落地的生产级代码。问题场景解决方案LLM生成规则格式错误。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1215

看GRE协议的数据封装

GRE网络数据封装流程

FanFF的博客 80

Flink on yarn任务日志怎么看

在flink的webui中可以看,但是flink任务失败后,webui就不存在了,那怎么看?

javaMylife的博客 4780

ABAP Bits and Bytes 完全参考,理解内存、字节、位运算与类型解释

ABAP开发中业务代码与底层字节处理的差异:业务层关注采购订单、会计凭证等语义信息,而接口开发需处理十六进制、位运算等底层操作。文章通过整数变量示例说明同一段字节在不同类型解释下会呈现不同值,并介绍x类型、位运算及类型转换的实际应用。这些知识在文件接口、加密传输等场景中尤为重要,开发者需注意字节序、编码等问题。建议将底层协议处理与业务逻辑分离,以保持代码清晰和可维护性。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 142

Flink日志配置

介绍flink在本地运行和on yarn运行时的日志配置。 很多现代框架都是用门面模式进行日志输出,例如使用Slf4j中的接口输出日志,具体实现类需要由log4j,log4j2,logback等日志框架进行实现。 Flink 中的日志记录就是使用slf4j日志接口实现的。 Slf4j简要说明 slf4j全名Simple Logging Facade for Java,为java提供的简单日志Facade。Facade门面说白了就是接口。它允许用户以自己的喜好,在工程中通过slf4j接入不同的日志系统。s.

upupfeng的博客 1万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Flink(五十二)—— Flink on YARN 常见问题与排查思路

Flink 支持 Standalone 独立部署和 YARN、Kubernetes、Mesos 等集群部署模式,其中 YARN 集群部署模式在国内的应用越来越广泛。Flink 社区将推出 Flink on YARN 应用解读系列文章,分为上、下两篇。上篇分享了基于 FLIP-6 重构后的资源调度模型介绍Flink on YARN 应用启动全流程,本文将根据社区大群反馈,解答客户端和 Flink Cluster 的常见问题,分享相关问题的排查思路。 客户端常见问题与排查思路 ▼ 应用提交控制...

weixin_42073629的博客 2456

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Flink on Yarn配置

Flink1.9.1与Yarn(hadoop2.6.2)结合使用,将flink的任务运行在Yarn上。 配置环境变量 配置HADOOP_CLASSPATH export HADOOP_CLASSPATH=${HADOOP_HOME}/bin/hadoop classpath 配置  YARN_CONF_DIR or HADOOP_CONF_DIR export HADOOP_...

forrest420的专栏 3172

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

上一篇: DataLake(转载)
下一篇: versions-maven-plugin插件批量修改版本号
Mathieu66
博客等级 码龄10年 68粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值