在 JupyterHub 中跟踪文件下载 activity?
Track file download activity in JupyterHub?
我已将 JupyterHub 0.7.0 部署到 AWS 管理的 kubernetes (EKS)
我需要为从个人用户笔记本服务器下载文件的用户收集指标。
问题:
- 是否有任何从 JupyterHub 发出的日志显示文件下载 activity?我需要查看文件下载发生在哪个用户(或哪个 pod)。
- 这些日志在哪里,我如何使用它们?
注意:"file download" 我指的是 Jupyter 主页上可用的 "Download" 按钮(参见提供的屏幕截图)
您应该能够做到这一点,从 /var/log/jupyterhub.log
获取日志,并查找您要为其执行指标的文件的文件名。
如果您提供日志,我可能会提供进一步的帮助。
但是如果没有所需的日志,我认为您需要直接从 Jupyter 用户那里获取这些日志:
docker logs jupyter-<user_name>
我能够从 AWS ELB 访问日志中获取我需要的数据。
这需要我更改配置设置。具体来说,"proxy-public" ELB 侦听器必须侦听 HTTP 流量,而不是 TCP 流量。 ("proxy-public" ELB 侦听器是通过安装 JupyterHub helm 应用程序隐式创建的)
ELB 访问日志有一个 属性 用于 request
。对于文件下载,request
属性 格式如下:
GET https://{DOMAIN}:443/user/{USERNAME}/files/{FILENAME}?download=1 HTTP/1.1
其中 DOMAIN
是 JupyterHub 的托管域
其中 USERNAME
是 JupyterHub 用户
其中 FILENAME
是下载的文件
我已将 JupyterHub 0.7.0 部署到 AWS 管理的 kubernetes (EKS)
我需要为从个人用户笔记本服务器下载文件的用户收集指标。
问题:
- 是否有任何从 JupyterHub 发出的日志显示文件下载 activity?我需要查看文件下载发生在哪个用户(或哪个 pod)。
- 这些日志在哪里,我如何使用它们?
注意:"file download" 我指的是 Jupyter 主页上可用的 "Download" 按钮(参见提供的屏幕截图)
您应该能够做到这一点,从 /var/log/jupyterhub.log
获取日志,并查找您要为其执行指标的文件的文件名。
如果您提供日志,我可能会提供进一步的帮助。
但是如果没有所需的日志,我认为您需要直接从 Jupyter 用户那里获取这些日志:
docker logs jupyter-<user_name>
我能够从 AWS ELB 访问日志中获取我需要的数据。
这需要我更改配置设置。具体来说,"proxy-public" ELB 侦听器必须侦听 HTTP 流量,而不是 TCP 流量。 ("proxy-public" ELB 侦听器是通过安装 JupyterHub helm 应用程序隐式创建的)
ELB 访问日志有一个 属性 用于 request
。对于文件下载,request
属性 格式如下:
GET https://{DOMAIN}:443/user/{USERNAME}/files/{FILENAME}?download=1 HTTP/1.1
其中 DOMAIN
是 JupyterHub 的托管域
其中 USERNAME
是 JupyterHub 用户
其中 FILENAME
是下载的文件