工具
文章平均质量分 61
Greetlist
这个作者很懒,什么都没留下…
展开
-
airflow2使用MutilScheduler的时候未同步任务状态
文章目录出现的问题部署方式:现象分析暂时的解决方式出现的问题部署方式:一个Trigger一个Webserver两个Scheduler现象当一个Defferable Task有机会立刻完成时,这个任务会被Mark Failed。而且是随机的,不管你有几个scheduler,只要用到Defferable Task都会有这种问题。分析相关Issue对于这个情况的分析都在这个Issue里面,里面也有相关的解决方法,但是没人理我,可能大家都没有碰到这个情况吧。暂时的解决方式在写我们自己的D原创 2021-12-28 15:49:39 · 262 阅读 · 0 评论 -
Airflow调度源码分析
文章目录主要的调度源码进程关系主要的调度源码主要的调度循环:jobs/scheduler_jobs.py 里面的 _execute()函数_execute() 里面的 self.executor.start()函数是主要的executor逻辑,executor里面会启动N个worker(executors/local_executor.py QueuedLocalWorker),这些worker是进程,所有的worker都从同一个公共队列里面取命令来运行,运行的时候会再开一个子进程来执行命令。某个原创 2021-11-29 09:04:40 · 732 阅读 · 0 评论 -
Airflow2 日志使用vector写入Elastic Search
文章目录组件步骤坑组件ElasticSearch - 7.15.2vector - 0.17.3Airflow - 2.2.1步骤启动elasticsearch跟kibana(可选,但是启动起来能看es里面的数据,方便调试)先写好vector解析toml,新版本的vector可以使用Vector Remap Language来添加字段、删除字段,还有一些内置函数,变量等,挺好用的。[sources.airflow_log] type = "file" igno原创 2021-11-23 14:30:14 · 10557 阅读 · 2 评论 -
airflow multi scheduler
文章目录支持版本额外配置实现方式具体代码启动支持版本需要Airflow2.0以上额外配置应该是不需要任何的额外配置,在helm里面能看到都是直接在deployment里面填replica数量实现方式多个scheduler实例主要矛盾点在如何通讯上面,airflow2用的是Mysql的行锁。同时只会有一个scheduler处理一个dag。具体代码jobs/scheduler_job.py_do_scheduling() { self._create_dagruns_for_dags()原创 2021-11-12 16:34:20 · 1381 阅读 · 0 评论 -
Deferrable Operators clear 不执行execute函数
文章目录看task_instance的源码可以看到,如果有next_method的话,那么就会把execute函数替换成next_method,但是新写的trigger里面next_method什么都不会做,就直接把任务mark success了。如果需要重新跑execute函数,那么就需要把对应任务的next_method、next_kwargs清空。在taskinstance.py文件里面的clear_task_instances()这个函数里面,修改上面的这两个变量这样就可以达到clear之后原创 2021-11-08 18:04:35 · 6451 阅读 · 0 评论 -
Airflow Deferrable Operators
文章目录依赖使用效果依赖Python3.7以上,需要使用asyncio这个库。airflow 版本需要在2.2以上。需要启动triggerer这个airflow进程。使用新加自己的DeferrableOperators,一般要经过三步:还是继承原来的BaseSensorOperator。from airflow.sensors.base import BaseSensorOperatorclass ExecutionDateTimeSensorAsync(BaseSensorOpe原创 2021-11-04 15:10:50 · 599 阅读 · 0 评论 -
airflow time sensor
文章目录现象TimeSensor 源码重写Sensor现象使用airflow原生的TimeSensor会发现clear历史任务的时候,预期这个time sensor会直接succ掉,历史任务继续往下走,但是现象是这个task会等到今天的特定时间才会succ。TimeSensor 源码from airflow.sensors.base import BaseSensorOperatorfrom airflow.utils import timezoneclass TimeSensor(Base原创 2021-11-04 15:10:24 · 699 阅读 · 0 评论 -
IE 获取 本地 Mac地址
文章目录需求解决总结需求在django里面扩展用户信息,添加mac地址获取本地Mac地址信息,并一起post到服务器在服务器对Mac地址进行校验解决django里面扩展用户信息可以这两篇博客:博客1,博客2暂时只能使用IE,可能可以使用火狐来通过JS获取本机Mac地址,Chrome这些浏览器因为安全性一般都不提供这种插件,IE也是通过ActiveX这个插件才能做到。设置IE浏览器:跟ActiveX相关的都设置成启用吧。JavaScript代码:var loc原创 2020-10-20 15:06:35 · 1739 阅读 · 0 评论 -
Prometheus杂七杂八的东西
文章目录一些函数下次遇到再记录一些函数scalar to vectorvector(s scalcar)这个函数可以把标量转化成矢量(vector),但是不带标签。比如说想看今天是星期几,day_of_week这个函数的参数就是一个vector,直接传标量要报错:day_of_week(time() + 3600 * 8) //errorday_of_week(vector(time() + 3600 * 8))on, ignore, group_left, group_right原创 2020-09-21 14:08:59 · 844 阅读 · 0 评论 -
AutoHotKey + Windows一些命令 + Windows Crontab
文章目录工具介绍初步使用Windows 一些命令Windows Crontab最后工具介绍AutoHotKey主要是用在Windows操作系统下面,可以当作一个改键工具,或者是自动化工具来使用。Github 地址:GitHub官网:官网初步使用安装好之后,就直接可以写脚本了,写好直运行脚本即可。官网论坛,教程上面有很多基础的例子,可以看看,教程手册有点乱,但是可以看。下面是我尝试的几个例子:使用IE登陆某些网站ie := ComObjCreate("InternetExplorer.原创 2020-09-18 14:10:20 · 402 阅读 · 0 评论 -
Windows 远程桌面连接问题
问题新开的Windows Server 虚拟机部分出现远程桌面连接不上的问题。报错不一样,有无法连接远程桌面,请联系管理员的,也有出现内部错误的。暂时的解决办法因为是有些虚拟机出现这种问题,但是有些又没有出现,只能通过VNC之类的方式登陆到虚拟机里面,然后重启Remote Desktop Services:打开service:把这个服务重启:暂时就可以解决这个问题。可能还会有防火墙之类的问题,这个就要在防火墙配置里面打开3389(远程桌面连接端口)的放行规则,但是一般这个规则都是允许域原创 2020-09-14 15:52:51 · 615 阅读 · 0 评论 -
Windows Server 2012 R2 keep session alive
文章目录问题解决办法问题现在需要通过虚拟机来建立一个VPN连接,连接到远程的机器上面。之前使用的都是EasyConnect,断开虚拟机远程桌面连接之后,EasyConnect不会断开。但是这次使用的是GlobalProtect这个VPN,发现这个VPN在远程桌面断开之后也会同时断开连接。这样就不能保持一个VPN的长时间的连接(必须有一个远程桌面连接到虚拟机上面)解决办法准备一台Windo...原创 2020-03-12 14:01:59 · 691 阅读 · 0 评论 -
Git相关
文章目录一些好用的命令commit msg 规范几篇好的博文一些好用的命令git rebase #合并一些之前的提交git commit -amend commit msg 规范Git上面有个好的项目可以使用,传送门,这个可以规范 git commit的书写。几篇好的博文Git rebasecommit书写规范...原创 2019-10-21 18:50:15 · 121 阅读 · 0 评论 -
ssh-copy-id
文章目录ssh keygen免密登录目标机器上面的变化ssh keygen生成ssh私钥和公钥,主要文件是:~/.ssh/id_rsa.pub ~/.ssh/id_rsa免密登录主要是要把当前机器的公钥copy到目标机器上面,主要命令是:ssh-copy-id $target_host_username@$target_host嗯,第一次使用这个命令的时候,需要输入密码,成功之后...原创 2019-10-15 16:15:28 · 432 阅读 · 0 评论 -
Jaeger OpenTracing 体验
文章目录Jaeger OpenTracingJaeger架构图和组件架构图组件1 : Instrumentation + OpenTracing API组件2 : Jaeger-client组件3 : Jaeger-agent组件4 : Jaeger-collector组件5 : Jaeger-query搭建Demo流程[ES]代码解析效果图代码最后Jaeger OpenTracingJaeg...原创 2019-06-03 19:09:14 · 2582 阅读 · 5 评论 -
Sublime Text 3 + Anaconda 代码补全
步骤: 1.下载Sublime Text 3. 下载 2.按照这里从官方获取用于安装的代码或者文件。链接里面有两种方法:输入python代码,或者下载一个文件,如果输入代码不顶用的话,那么可以尝试下下载文件,具体的操作方式点前面链接。记得重启Sublime Text 3.通过组合键 Ctrl + Shift + p 打开 Package Control: 出现这个之后回车。 4.直接搜...原创 2018-04-10 16:33:38 · 7927 阅读 · 2 评论 -
Vim快速注释插件 -- NerdCommenter
在没有使用插件之前,我们也可以使用vim自带的工具来完成多行注释:Ctrl + v 选中需要注释的行 --> I [注意是大I] --> 输入注释 --> 连按两次Esc。上面一串操作最少需要 1 + N + 1 + M + 2 次按键,很麻烦。所以我们需要一个插件来帮助我们完成快速注释。NerdCOmmenter是一个很好的插件:1.GitHub:传送门2.安装:使用Vun...原创 2018-05-21 13:45:22 · 4575 阅读 · 0 评论 -
Psd Tools + Fabric
最近有个需求:把psd文件解析出来,并且在网页上面显示:这里主要推荐两个库:1.python:psd-tool2, psd-tool 这两个库的区别就是2解析了EngineData而1没有解析出来。[解析EngineData:EngineData]但是这两个库都不能很好地混合图层。2.JavaScript:Fabric.js,这个前端Canvas库可以使用Json来在web端描述图像,文字的位置,...原创 2018-06-01 00:14:19 · 2537 阅读 · 2 评论 -
rsyslog + cron + crontab
尝试使用crontab来定期地执行脚本或者命令:主要命令:crontab [ -u user ] [ -i ] { -e | -l | -r } -u:查看指定的用户 -e:editor 编辑cron table -l:list 查看cron table -r:remove 删除cron tablesudo service cron sta...原创 2018-07-04 12:54:08 · 816 阅读 · 0 评论 -
记第一次装机
文章目录硬件主板显卡CPU内存硬盘散热电源过程第一次点亮安装系统安装驱动最后硬件主板华硕B360显卡NVIDIA GeForce 1060 6GBCPUIntel I7-8700内存金士顿 8G * 2硬盘西部数据 2TB * 1散热CPU 水冷电源海盗船 550V过程第一次装机,整个过程持续了一天。1.从安装主板开始,就开始出现很多...原创 2018-11-14 18:28:30 · 369 阅读 · 0 评论 -
时区
date +%s 出来的时间为 CST 北京时间,如果要UTC,那么需要减掉8个小时。维基:https://zh.wikipedia.org/wiki/时区https://zh.wikipedia.org/wiki/UTC%2B08:00原创 2018-11-26 11:09:43 · 482 阅读 · 0 评论 -
Vimium
一个很好的Chrome插件,可以使用Vim按键来完成全部的访问Web的操作。官网:https://github.com/philc/vimium相关的帮助可以使用Shift + / 来查阅。原创 2018-12-29 15:46:27 · 809 阅读 · 0 评论 -
编译链接 protobuf时出现的错误
文章目录问题描述解决方法环境问题描述1.编译protobuf的时候会出现链接错误:undefined reference to `google::protobuf::Message::SpaceUsedLong() const'2.编译的时候会出现terminate called after throwing an instance of 'google::protobuf::Fata...原创 2019-02-19 16:32:35 · 7732 阅读 · 2 评论 -
Golang kafka
文章目录kafka分区和消费者对应关系offset的提交Golang Kafka 第三方库实验kafkaApache-Kafka 消息队列。传送门分区和消费者对应关系1.一个组内的每一个消费者对应一个topic的一个分区。分区数即是最大消费者的数量。每当多余的消费者加入消费,会造成rebalance。比如:如果只有一个分区,并且已经有一个消费者在消费这个分区了,但是又重新加入了一个消费者,...原创 2019-03-19 16:56:42 · 2491 阅读 · 0 评论 -
ElasticSearch + Kibana
文章目录介绍用途安装Mock数据简单的使用关于Kibana和ElasticSearch的连接使用最后介绍ElasticSearch : Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎[官网介绍]Kibana:能够对 Elasticsearch 中的数据进行可视化并在 Elastic Stack 进行操作[官网介绍]用途现在Elastic Stack 多...原创 2019-04-18 18:38:10 · 2546 阅读 · 0 评论 -
You-Get && FFmpeg
文章目录歌曲来源B站视频URL下载B站视频编解码 FFmpegflv --> mp4提取音视频关于FFmpeg 和 You-Get歌曲来源毒枭第三季第十集最后的插曲Xochicuicatl - Ixya HerreraB站视频URL传送门下载B站视频You-Get编解码 FFmpeg安装步骤:mkdir ffmpegcd ffmpegwget https://la...原创 2019-05-17 16:41:59 · 2476 阅读 · 3 评论 -
Prometheus 初次使用
文章目录Prometheus概念收集数据安装Prometheus运作方式[猜测]使用每个组件使用客户端使用Prometheus使用告警效果图最后Prometheus概念普罗米修斯是专注于做监控的一个开源软件,它集成了收集,监控和告警三个大的模块。收集数据根据官方介绍,待监控的服务都可以提供一个 /metrics URL来供Prometheus拉取数据,也可以把这些需要收集的数据先放到一个特...原创 2019-06-12 14:43:57 · 527 阅读 · 0 评论 -
Vim 安装 YouCompleteMe 插件
在ubuntu 16.04上面安装YouCompleteMe插件vim版本:8.0[需要python支持] cmake libclang3.9+ [需要自己去llvm官网下载预编译好的二进制文件,添加到PATH路径的文件夹下面]1.使用Vundle来安装: git clone https://github.com/VundleVim/Vundle.vim.git ~/....原创 2018-04-15 23:16:36 · 680 阅读 · 0 评论