普通视图

Received today — 2026年4月20日

济南,济南

作者obaby
2026年4月20日 13:29

济南,一个自己待了数年的地方。自己也没想到,等那天真的离开之后,就不再常有去的机会了。上一次去济南还是参加室友的婚宴,一眨眼已经快十年了。

现在,又到了一个春意盎然的季节,宝子虽然已经去过很多的城市,山东省内周边依然都跑遍了,现在剩下的还有靠近最西面的那几个城市。济南,曾经也多次想去转一转,看一看,是不是还是记忆中的样子。然而,却又纠结于出行的便利性,对象总说,去了济南几次,体验印象总是不好。交通差,环境一般,又热。

眨眼时间,感觉年还没过完多长时间,就到了五一了。五一出去玩总是感觉体验更差了。并且,按照济南的温度,等五一的时候就更热了,看那人山人海,总是感觉有些抗拒,最后还是选择了这个周末带着孩子去溜达溜达。

早上七点多高铁,到济南十点多。刚从高铁出来,就开始狂打喷嚏,空气中飞舞的杨树毛毛实在是太多了。从车站出来,本来想打个六座商务,一顿狂奔跑到上车地点,发现竟然是辆出租车。只好让他们先走,自己后面再打一辆车。然而再次打车的时候,发现有进行中的订单,没法打车,好在另外一个手机上还有个滴滴,不然这真就麻烦了。

大明湖畔的夏雨荷?

安顿好,吃过午饭下午就可以出去玩了。对象同学推荐的珍珠泉宾馆,在公园内,出门去哪里都很方便。最终也是选择了这个地方,到了之后找吃饭的地方,也费了一番周章。宝子姥姥这不吃,那不吃,济南小吃把子肉自然是就被排除了。最后选择了一家离住的地方比较近的的全景餐厅。

一顿饭吃下来,除了贵的确没什么优点。羊肉又老又硬,备注不让放蒜的菜,里面还有独头蒜,可能独头蒜不是蒜吧。整体吃下来,就九转肥肠还有佛跳墙勉强可以。其余的几个菜,实在是水平一般。

中午回到住处稍微休息会儿,下午出门的时候从酒店窗户看出去,还以为是阴天了,出门以后发现完全不是,艳阳高照。沿着珍珠泉内部游览,到北门的时候却发现是封闭的,根本出不去,如果要想去大明湖,只能原路返回,从珍珠泉公园围墙西侧绕行过去。

 

这可能只是个普通的周末吧,路上的游人络绎不绝。当然,也有无数穿汉服的小姐姐,只是妆画的稍微浓了点,没那么精致。不过户外拍照可能也好,毕竟室外的光线和环境还是蛮不错的。当然,不精致的好处就是化妆时间可以大大减少,这样就可以多画几个了。

大明湖,最出名的竟然是夏雨荷。一个源自琼瑶小说的人物,这个文创的出发点的确有点让人匪夷所思。济南那么多名人,最后竟然选了一个夏雨荷。上次逛大明湖,还是从厦门回到青岛的时候,带一个姐妹来大明湖转了一圈。只是,从始至终,两个人甚至连一张合照都没有,而现在,也悄然断了联系。

空气中的毛毛,落在草丛里也叠成了厚厚的一层,看上去仿佛下了一场雪。湖中,那个破败的船,不知道是年久失修还是尚未完工,看起来的确也没什么美感,就这么坐落在湖中。

这半圈下来,宝子的姥姥姥爷已经走不动了。带他们出去准备去商场吃饭,顺便对象去给宝子买条裙子。白天玩的时候,一直嚷嚷好热啊,好热啊,跟复读机一样。

母校

他们去逛商场买东西,自己约了在济南的几个室友。准备去学校吃点东西,上次来学校也已然是十多年前了。每次来,总是能看到一些变化,每次来又感觉还是那个样子。

打车往学校走,到处都是修路的影子,从自己第一次来济南感觉就在修路,直到后来离开济南,还是在修路。现在再来的时候,还是在修路,济南的路感觉永远也修不完。路上的电动车自行车浩浩荡荡,在车上我都担心司机可能会蹭到他们。

现在想进校门不再那么方便了,需要校友卡或者提前预约。室友L发了个小程序的链接,好在自己提前注册认证好了。到门口出示校友卡,刷身份证就可以进入了。

从北门进入,现在操场下面是一堆小店,移动、联通等等。路上的道闸一层又一层,不知道是出于什么设计理念。

一路向南,貌似拆了几栋楼,自己原来的宿舍里依然还在,看似来除了外墙稍微新了点,似乎也没什么变化。

_

小树林还是多年前的木地板,稀稀落落的坐着几个人。

还有一个红色的牌子。

只是,现在回家多少有点麻烦。

溜达到快到南门的时候,发现了一个主题邮局,这个貌似之前来的时候还没有。

买了一件粉色的连帽T恤,一个粉色的笔记本,还有那个粉色的小熊。小熊不是很好带,只好让他们帮忙给寄回去。

从南门出来,也已然不是记忆里的样子,对面的书店,现在变得高级感十足。

晚上在学校餐厅三楼点了几个菜,X去买了几瓶rio,算是简单的相聚。晚饭后沿着学校的道路溜达,从南门到北门,操场,教学楼。太多的地方依然不是记忆里的样子。

曾经昏暗的八角楼,现在变得亮如白昼。

南门广场终于也不再是那种绿洼洼的射灯,现在看起来温暖多了。

北门的外卖柜,的确是个高级设计,外面投,里面取。S说,这可以说是这个学校最伟大改进。

路过宿舍楼的时候,听到两个小情侣在闹分手。

女:我想分开一段时间。

男:想分就分吧,我不觉得自己有什么问题,我觉得我做的挺好的,你想跟谁就跟谁吧。

女:不是这个意思,……

我跟L说,那俩分了,你去不领一个走?

X问:啥要分了?

我说:后面那俩在闹分手呢。我简单复述了一下他们的对话。

X说:这叫极限拉扯,在追求自己的利益呢。

我说:能干就干,不能干就滚呗!

L大惊:啥意思?

我的意思是,能过就过,不能过就分。这种自认为完美无瑕的男人,我要是那个女生,早就撒丫子跑了。我忙解释道。

X说:你头一直这么铁吗?

不不不,我上学的时候也是傻逼。还没经受过社会毒打,经过社会毒打之后才变得这么铁的,哈哈哈。我回道。

快出校门的时候,X说,你们等一下,我去骑我的小电动。

我跟L刷卡出去,站在外面看路边的标牌。我说:『刚看这个网吧,我还想什么沙雕名字,墨迹网咖,咋地越打越墨迹?后来才发现我看错了,是星迹网吧。』

『你还是那么幽默』L说,的确,我这不认字、以及看错顺序的毛病不是一天两天了。

X过了十几分钟从道闸出来,说:『刚才被吓一跳,一个男生在大马路上去找一个女生要微信,被无情的拒绝了!』

『现在还流行这么要联系方式吗?如果找我要,我也不给!』我说。

趵突泉

这也是济南必去的景点了,来都来了,怎么能不去呢。早上一早起来就奔趵突泉而去,这次尝试只选商务,然而,很不幸根本没有。最后还是打了一辆出租车。他们走了之后自己解锁了一辆共享单车骑过去。在路上这自行车道有的在辅路的左侧,有的在右侧,直接整懵逼了。

趵突泉树上的牌子写着:『再喂就嘎了』,意思是已然不让投喂锦鲤。实际情况也是并没有人投喂,然而对象在入口给宝子买了六包小鱼食,最后终于在一个比较偏的小河中,找到一群小金鱼,把鱼食投喂了出去。

再出发之前就看到有人发的把子肉味的酸奶,这下也总算是体验到了。

感觉是一股咸肉粽的味道,腻歪歪。不过那个荷叶味道的还是蛮清新的。

相比大明湖,趵突泉就小多了,用了个把小时转悠一下就准备下一站了。博物馆,当然,很多人都觉得写的是山东情妇馆。

 

鉴于上午退房之后,现在有三个大背包,想着找个储物柜存起来。去发现所有的储物柜都是满的。进去之后,发现包里有自拍杆,保安提示可以把自拍杆寄存到保安室,这下正好就可以把其他的几个包寄存了,省下一个带笔记本的,怕万一有点什么事情也不好处理就背在身上。

从四层一层层的往下走,当然主要是为了看现眼包文物。那个青铜首饰盒上面的两个小人是全裸的,嗯嗯,这就蛮有意思的。关键是,那个小男人,JJ绷的又长又直。

看到那根巨长的胫骨,我跟我对象说,它好长啊,我感觉比我的骨头长,我的也就两扎多点,那个至少得有三扎,我得拍下来。

一层层转下来,已经是下午一点,隔着一个街区,路过美术馆就到了万象汇,所有的饭店都在排号,想着找个排队少的,也挺难的。趁他们在等椰子鸡的时候,自己去溜达了一下,找到一个北京羲和烤鸭,刚开始还想,这義和烤鸭,我第一个想到的竟然是义和团。等了十几分钟,大桌叫号之后自己进去等,给他们打电话通知过来。想着叫义和烤鸭总是有点不对,只是告诉他们是北京烤鸭。对象来了之后,我说,这义和烤鸭名字是不是有点那啥,让我想到了义和团。对象说,我也是,第一眼这么像的,后来发现不是,是羲和烤鸭,你看盘子上。

仔细观察才发现真的是羲和烤鸭,得被没吆喝说让他们来义和烤鸭。

完善的火车,下午依然有足够的时间。刚好就可以去路过的美术馆了。虽然没啥美术细胞,但是看看嘛,总也是好的。

一楼的问道,一不小心,就问到了三楼。

其他的就是各种美术展,陶瓷展,属于自己看不懂的犯愁了,唯一能看懂的就是这个万花筒。

离开的时候,又经过门口的那个雕塑,还是忍不住拍了下来。

这光屁股的男人,身材是真的好,头上顶个蛋,抬着头,双手捂着私处。

这雕塑难道是想告诉我:别折腾了,折腾来折腾去,有个蛋用啊!

 

Received before yesterday

使用Filebeat采集Nginx日志到ES

2026年4月18日 00:00

filebeat是传统elk组件中logstach的升级替代,能够高性能的采集一些中间件的日志到es中,供检索分析。

1.安装filebeat

首先要安装filebeat到nginx所在服务器,因为我的服务器是rocky linux属于redhat系,故这里通过yum安装,先设置安装源

导入GPG-KEY

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

新建一个elastic.repo文件在/etc/yum.repos.d下,并粘贴安装源地址

vim /etc/yum.repos.d/elastic.repo

[elastic-9.x]name=Elastic repository for 9.x packagesbaseurl=https://artifacts.elastic.co/packages/9.x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearchenabled=1autorefresh=1type=rpm-md

接下来执行安装,直到安装完成

yum install filebeat -y

2.设置nginx和filebeat

首先确认nginx的日志路径和日志格式,一般日志路径默认就是:

  • /var/log/nginx/access.log 常规访问日志
  • /var/log/nginx/error.log 错误日志

在nginx.conf配置文件中,默认的日志格式是:

log_format  main  ' $remote_addr - $remote_user [$time_local] "$request" '                  '$status $body_bytes_sent "$http_referer" '                  '"$http_user_agent" "$http_x_forwarded_for"';

为了区分各个主机的访问记录,我选择增加一个主机的字段:$host

log_format  main  '$host $remote_addr - $remote_user [$time_local] "$request" '                  '$status $body_bytes_sent "$http_referer" '                  '"$http_user_agent" "$http_x_forwarded_for"';

亲测filebeat可以识别上述的日志格式,自动提取有效信息

然后设置filebeat,通过yum安装的filebeat,默认全局配置文件位于/etc/filebeat/filebeat.yml,有这样几项需要修改

output.elasticsearch:  # 改成自己es地址和端口  hosts: ["localhost:9016"]  # 改成自己的索引格式  index: "nginx-logs-%{+yyyy.MM.dd}"  # 通信协议按需要修改  protocol: "http"  # es用户名密码,必须设置  username: "elastic"  password: "***************"# 需要新增这两项,索引数据格式模板名称setup.template.name: "nginx-logs"setup.template.pattern: "nginx-logs-*"

然后对nginx的采集功能进行设置,filebeat支持很多中间件的日志采集,通过yum安装的filebeat,默认的各中间件的采集配置文件位于:/etc/filebeat/modules.d/

首先要将默认的nginx配置文件nginx.yml.disabled复制出一份nginx.yml,因为最后filebeat只会自动导入读取.yml结尾的文件

cp /etc/filebeat/modules.d/nginx.yml.disabled /etc/filebeat/modules.d/nginx.yml

vim编辑/etc/filebeat/modules.d/nginx.yml配置文件,针对nginx的采集进行配置

- module: nginx  # 打开常规访问日志采集,指定日志路径  access:    enabled: true    var.paths: ["/var/log/nginx/access.log"]    var.timezone: "Asia/Shanghai"  # 打开错误日志采集,指定日志路径  error:    enabled: true    var.paths: ["/var/log/nginx/error.log"]    var.timezone: "Asia/Shanghai"

都修改完成后,通过filebeat test config命令,验证配置文件是否有语法错误

[root@VM-0-3-rockylinux ~]# filebeat test configConfig OK

然后启动filebeat,并且能看到进程,启动成功

[root@VM-0-3-rockylinux ~]# systemctl start filebeat[root@VM-0-3-rockylinux ~]# ps -ef | grep filebeatroot      279214       1  0 Apr17 ?        00:00:09 /usr/share/filebeat/bin/filebeat --environment systemd -c /etc/filebeat/filebeat.yml --path.home /usr/share/filebeat --path.config /etc/filebeat --path.data /var/lib/filebeat --path.logs /var/log/filebeatroot      484905  454652  0 14:33 pts/2    00:00:00 grep --color=auto filebeat

3.查看索引

登录kibana,打开开发工具,就能看到filebeat建的索引和采集到的日志了,还可以根据业务需要制作图表等

还可以通过检索,通过链接和访问次数进行聚合,查出一些攻击和刺探的恶意请求,例如:

GET /nginx-logs-2026.04.18/_search{  "size": 0,   "aggs": {    "domain_counts": {      "terms": {        "field": "url.domain",       "size": 20000      },      "aggs": {        "domains_per_ip": {          "terms": {            "field": "source.ip",            "size": 20000                      },          "aggs": {            "domains_per_path": {              "terms": {                "field": "url.path",                "size": 20000                              }            }          }        }      }    }  }}

偷梁换柱 — 解决『出境易暂不支持此应用。』

作者obaby
2026年4月17日 15:30

前几天去买手机的时候,销售小哥说,如果你不喜欢这个纯血鸿蒙,或者感觉无法满足需求可以回来去二楼,找技术把系统进行降级。

当时我在想:对于我这种买手机不怎么玩游戏或者需求没那么多的人来说,应该能解决我的绝大多数需求,毕竟系统上还有 出境易、卓易通。

然而事情总有例外,自己常用的浏览器vivaldi发现竟然无法安装,这就让人非常的抑郁了。

下载apk安装的时候提示:出境易暂不支持此应用。

哎,咱们可不兴这么搞啊,这就离谱啦。我已我不稳定的智商来猜测这个东西肯定是有个神马白名单或者黑名单机制,至于黑白名单,到时也没那么关键,大不了就改个包名嘛。然而安装 apktool m的时候同样的提示也出现了,这个东西大概率就是黑名单了。

算鸟,算鸟,直接用模拟器改吧:

点击快速编辑:

原来的包名:com.vivaldi.brower,咱们假装是uc咋样呢:

反正我也不用uc浏览器,嘎嘎。

修改之后,发送到手机进行安装,一切顺利,嘻嘻:

鸿蒙next:我要验牌!牌没有问题!

尝试同步功能:

完美!

到这里就结束啦,对于同步问题,有的宝子说非得搭梯子,也不一定。可以直接修改hosts,可以在路由器配置或者dns配置,或者神马别的地方配置:

vivaldi.com. 172.66.165.60
bifrost.vivaldi.com. 31.209.137.10
cdn.jsdelivr.net. 151.101.89.229

 

生日快乐 — 又是一年二十九

作者obaby
2026年4月16日 13:52

年复一年,时间似乎过的很快,又过的很慢。今天一直在忙各种事情,直到现在才有片刻的空闲,来庆祝下自己的生日。

这一年发生了很多意料之外的事情,甚至有的事情到现在还没有结论,后续如何更是一个未知数。然而,不管如何,生活还是要继续的。这慢慢人生,没有太多的时间去彷徨,去挣扎,去苦闷。

好几天之前,刷到一个视频,我跟对象说,我要把这个在我生日那天发朋友圈,之前保存下载,今天早上就出现在了自己的朋友圈了,虽然没人点赞,没人回复,我倒是也不在乎,自己开心就好。

至于生日礼物,上周的时候对象就问自己想要什么。

『我要三折叠』

『没有』

『我要双折叠』

『也没有』

对于这种折叠屏手机,只是没用过,有点喜欢,可能也没那么喜欢。昨天中午,趁着午饭的时间,去乐客城外面的华为体验店看了一眼。

只是出来之后,原来的华为竟然变成了小米。高德搜了一下发现地标还没变,但是在其他的地方有另外两个,只好往另外一边的华为体验店走。

中午时间,店里没几个顾客,连店员都没几个。看了下三折叠跟双折叠,三折叠太贵,双折叠的尺寸总是觉得有些奇怪。

双折叠的感觉就是叠起来,打开比例看着都挺奇怪的。三折叠的价格,实在是不敢恭维,快两万块钱买个手机,这已经远远超出自己的可承受范围了。走之前给对象发消息,得到了明确答复,坚决不同意买三折叠。

最后,目标还是落在了mate 80 和pure 80上,至于mate,那个中间的摄像头总是感觉有些别扭,店员还说,那个特别商务,看起来比较大气。问题是,我不喜欢商务风啊。

鉴于线下还能领国补,虽然没有自己想要的金色,还是果断下单了,最终选的的白色,黑色也不喜欢。

还给了一堆乱七八糟的赠品,聊胜于无吧。

之前的p70 pro彻底放弃了,而至于30,也的确支撑的有点吃力,至于90,新机价格大概率比较贵,所以现在马上换代了,80 就80吧。

晚上回家的时候,收到了对象送的猫和老鼠的小手办,老鼠被压成鼠饼的那一集,嘻嘻。

中午的时候,买的新的车载空气清新剂和另外一条瑜伽裤到了,之所以再买一条是感觉上一条的弹力不够大,跳绳的时候没有足够的压力支撑。

上面是原来的,现在已经没什么味道了、下面是新买的。

味道还是蛮清新的,喜欢女生味的可以考虑下哦,香型:香奈五号。香奈儿的就不考虑了哈,那个太贵了,很多仿这个香味的。

比原来的大一圈,放到前面的杯架刚刚合适。

至于瑜伽裤,感觉弹力的确比上一条要好一些,价格也自然是贵了点,上一条黑色瑜伽裤的两倍。

上身效果:

最后,贴一下现在的手机壁纸,希望锦鲤给所有人都带来好运哦:

我要赚钱钱 我要暴富富
我要变美变瘦变酷酷
我要钱多多 我要买车车

Chrome浏览器自带翻译的诡异Bug:ID翻译后竟然变化了

当前负责的项目主打海外业务,总免不了和多语言打交道。但最近我在Vite+Vue3+Element Plus技术栈的项目里,遇到了一个堪称“玄学”的bug——Chrome浏览器自带翻译功能,居然能把表格里的数字ID直接改了!从印度同事到国内运...

谷歌广告AdSense/GAM 接入避坑 + 填充监听 + 问题排查

作为长期负责海外业务的开发者,公司业务中经常会和谷歌的人员有沟通。在接入谷歌广告生态时,踩了很多坑,很多坑都是和谷歌的技术人员沟通后才发现问题的(有些最新情况和文档不一致,很坑)。

如何优雅判断 AdBlock 是否开启?前端实现方案分享

因为自己主要负责面对海外的用户项目,发现以前的检测AdBlock/AdBlock Plus开启状态方法已失效了,于是专门研究了一下,并尝试了很多方法。发现npm上的插件基本都失效了,于是研究了一下屏蔽原理。

JavaScript 正则陷阱:全局匹配 /g 导致的 test () 方法异常详解

在 JavaScript 正则表达式使用中,一个看似简单的全局匹配标志/g,可能会在循环检测时引发令人困惑的结果。本文将通过实际案例解析这一现象的底层原因,并提供多种解决方案。

❌