有没有办法记录对svn仓库的读取访问?任何可以执行此操作的SVN配置(或工具/脚本)?
我找到了svn-access-manager,但不确定它是否记录了访问权限.此外,它需要一个mysql/apache设置.写入文件的东西会很好.
谢谢 !
记录仅在apache中可用.在apache中,您可以将隐秘的access.log与每个WebDAV-Request一起使用,也可以使用更多svn特定的日志:
要启用仅记录subversion操作的日志,请在您的位置之外放置这样的指令:
CustomLog logs/svn_logfile "%t %u %{SVN-ACTION}e" env=SVN-ACTION
Run Code Online (Sandbox Code Playgroud)
在这里查看更多详细信息:
http://svnbook.red-bean.com/nightly/en/svn-book.html#svn.serverconfig.httpd.extra.logging
有关logfile中可用的apache变量的更多信息:http: //httpd.apache.org/docs/2.0/mod/mod_log_config.html#formats
虽然它是一个非常古老的问题,但作为svn访问日志解决方案从未提出过,问题永远不会被关闭,这里的解决方案与Apache无关.
在服务器启动脚本中使用--logfile选项,可以获取所有访问日志.日志包括时间,IP地址,存储库,用户和命令(日志,更新,提交等).
usr/bin/svnserve -d --listen-port = $ SVN_PORT --log-file $ SVN_LOG_FILE --pid-file = $ SVN_PIDFILE
这是所有存储库的全局日志,但您始终可以基于存储库进行过滤.当您使用svn协议访问存储库时,它将记录.
我希望这有帮助.