首页
关于
Search
1
git lg彩色显示日志
24 阅读
2
在 Ubuntu 22.04 LTS 中安装 Docker
19 阅读
3
CentOs/Ubuntu搭建上网x-ui
18 阅读
4
git使用多个源和多个分支
15 阅读
5
git保存账号密码
14 阅读
默认分类
网站搭建
Windows
Linux
Docker
OpenWrt
Hackintosh
Git
Python
Pandas
Web开发
JavaScript
FFmpeg
Demo
工具
刷机
油猴脚本
Excel
Chrome Extension
登录
Search
标签搜索
Pandas
读取
时区
Chrome
centos8
求和
Nginx
Typecho
404
csv
国际站
询盘导出
油猴脚本
bbr
Ubuntu
远程桌面
日志
log
数据清洗
打印机
野生程序猿
累计撰写
151
篇文章
累计收到
0
条评论
首页
栏目
默认分类
网站搭建
Windows
Linux
Docker
OpenWrt
Hackintosh
Git
Python
Pandas
Web开发
JavaScript
FFmpeg
Demo
工具
刷机
油猴脚本
Excel
Chrome Extension
页面
关于
搜索到
34
篇与
的结果
2024-02-08
禁用特定URL的uWSGI日志记录
在配置uWSGI时,有时您可能希望禁止记录特定URL的日志。例如,当您的应用程序处理某些敏感信息或在内部进行路由时,禁用日志记录可能是必要的。首先,确保已经安装了必需的依赖项。根据 Stack Overflow 上的答案以及 Stack Overflow 上的另一篇答案,要启用uWSGI的内部路由功能,需要依赖PCRE正则表达式库。您可以使用以下命令在安装uWSGI之前安装它们:sudo apt-get install libpcre3 libpcre3-dev依赖项安装完成后,需要重新安装uwsgi。然后可以配置uWSGI以禁止特定URL的日志记录。uWSGI官方文档提供了一个名为"donotlog"的选项,可以实现这一目的。以下是一个示例配置文件:[uwsgi] enable-threads = true module = wsgi:app socket = 0.0.0.0:5000 master = true processes = 2 route = ^/log donotlog: logto = /app/uwsgi.log log-reopen = true log-maxsize = 10485760 log-backupname = /app/uwsgi.log.old在此配置中,我们使用了"route"选项指定了一个正则表达式模式,以匹配我们希望禁止日志记录的URL。然后,我们使用"donotlog"指令告诉uWSGI不要记录与该模式匹配的请求。通过这样的配置,uWSGI将不会记录任何发送到"/log"路径的请求的日志,从而实现了禁止特定URL的日志记录的目的。
2024年02月08日
3 阅读
0 评论
0 点赞
2023-12-02
python使用虚拟环境
1.重新创建虚拟环境:deactivate # 确保虚拟环境已经被关闭 rm -rf .venv # 删除虚拟环境文件夹 python3 -m venv .venv # 重新创建虚拟环境 source .venv/bin/activate # 激活虚拟环境2.使用python3进行安装:python3 -m pip install flask3.Windows首次运行可能会出现阻止提示无法加载文件xxx.venv\Scripts\activate.ps1,未对文件进行数字签名,因为在此系统上禁止运行脚本解决方法:第一步:以管理员身份运行powershell第二步:执行:get-ExecutionPolicy 一般来说回复都是Restricted,表示状态是禁止的。第三步:执行:set-ExecutionPolicy RemoteSigned第四步:选择Y,回车
2023年12月02日
13 阅读
0 评论
0 点赞
2023-11-25
uwsgi下apscheduler定时任务启动多次的解决办法
在Web应用的开发中,有时我们需要定时执行一些任务,比如每天早上8点执行一次特定的任务。而在uWSGI这样的应用服务器环境下,我们需要确保任务只在一个进程中运行,避免重复执行。为了实现这一目标,我们可以使用文件锁来同步多个uWSGI worker进程。使用APScheduler定时任务首先,我们使用APScheduler库来创建定时任务。在这个示例中,我们定义了一个名为daily_update_task的任务,它将在每天早上8点执行。from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.triggers.cron import CronTrigger from flask import Flask app = Flask(__name__) def daily_update_task(): with app.app_context(): print('daily_update_task starts...') scheduler = BackgroundScheduler() scheduler.add_job(daily_update_task, trigger=CronTrigger.from_crontab('1 8 * * *')) 使用文件锁确保单一运行接下来,我们使用文件锁来确保只有一个uWSGI worker进程可以创建并运行daily_update_task任务。我们通过fcntl模块获取文件锁,然后创建并启动BackgroundScheduler。import fcntl import os def start_scheduler(): # 获取当前脚本的绝对路径 script_path = os.path.abspath(__file__) # 使用文件锁 lock_file = open(script_path + '.lock', 'w') try: # 尝试获取锁,如果获取失败说明已经有其他实例在运行 fcntl.flock(lock_file, fcntl.LOCK_EX | fcntl.LOCK_NB) # 创建并启动调度器 scheduler = BackgroundScheduler() scheduler.add_job(daily_update_task, trigger=CronTrigger.from_crontab('1 8 * * *')) scheduler.start() # 阻塞当前进程,保持文件锁 while True: pass except IOError: # 文件锁已被其他进程获取,说明已经有一个实例在运行 print("Another instance is already running.") finally: # 释放文件锁 lock_file.close() if __name__ == '__main__': start_scheduler() 这样,我们就确保了在uWSGI下只有一个进程创建并运行了定时任务。当其他进程尝试运行时,它们会检测到文件锁已被获取,从而避免了重复执行任务。总结在uWSGI环境下,使用文件锁是一种有效的方法来确保定时任务只在一个进程中运行。通过以上代码,我们成功地创建了一个daily_update_task任务,并使用文件锁避免了多个进程重复运行任务的问题。这对于需要定时执行任务的Web应用是一个实用的技术手段。
2023年11月25日
1 阅读
0 评论
0 点赞
2023-06-15
发行版Linux没有pip的解决办法
1.下载 get-pip.pyPython 的官方网站提供了一个脚本 get-pip.py,可以自动下载并安装 pip。我们可以使用 wget 命令来下载这个脚本:wget https://bootstrap.pypa.io/get-pip.py这条命令会将 get-pip.py 脚本下载到当前目录。1.安装 pippython get-pip.py
2023年06月15日
2 阅读
0 评论
0 点赞
2023-05-12
Pandas重新采样时间序列resample
在Pandas中,df.resample('W')是一个用于重新采样时间序列数据的方法。它允许你将一个具有日期时间索引的DataFrame或Series对象转换为不同的时间频率。在df.resample('W')中,参数'W'表示按周进行重采样。这意味着将原始数据按周聚合,并生成一个新的DataFrame或Series对象,其中每个周的数据被聚合为一个单独的数据点。下面是使用df.resample('W')的一个简单示例:import pandas as pd # 创建一个包含日期时间索引的示例DataFrame data = {'date': pd.date_range('2023-01-01', periods=100, freq='D'), 'value': range(100)} df = pd.DataFrame(data) df.set_index('date', inplace=True) # 按周重新采样数据 resampled_df = df.resample('W').sum() # 输出重新采样后的DataFrame print(resampled_df)输出结果将类似于以下内容: value date 2023-01-01 21 2023-01-08 56 2023-01-15 77 2023-01-22 105 2023-01-29 133 ... ... 2023-04-02 1131 2023-04-09 1168 2023-04-16 1205 2023-04-23 1242 2023-04-30 608 [18 rows x 1 columns]在上述示例中,原始数据按每天的频率生成,然后使用df.resample('W')方法按周重新采样。聚合函数(默认为求和)被应用于每个周的数据,生成了一个新的DataFrame,其中每个周的值是原始数据在该周内的总和。你可以根据需要使用不同的聚合函数来处理数据,如.sum()、.mean()、.max()、.min()等。此外,你还可以使用.agg()方法对不同的列应用不同的聚合函数。
2023年05月12日
1 阅读
0 评论
0 点赞
1
2
3
...
7