Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
5e2a748b
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
5e2a748b
编写于
10月 18, 2017
作者:
Z
Zeger-Jan van de Weg
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add Gitaly data to the Peek performance bar
上级
220a5c37
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
56 addition
and
0 deletion
+56
-0
app/views/peek/views/_gitaly.html.haml
app/views/peek/views/_gitaly.html.haml
+7
-0
changelogs/unreleased/zj-peek-gitaly.yml
changelogs/unreleased/zj-peek-gitaly.yml
+5
-0
config/initializers/peek.rb
config/initializers/peek.rb
+1
-0
lib/gitlab/gitaly_client.rb
lib/gitlab/gitaly_client.rb
+9
-0
lib/peek/views/gitaly.rb
lib/peek/views/gitaly.rb
+34
-0
未找到文件。
app/views/peek/views/_gitaly.html.haml
0 → 100644
浏览文件 @
5e2a748b
-
local_assigns
.
fetch
(
:view
)
%strong
%span
{
data:
{
defer_to:
"#{view.defer_key}-duration"
}
}
...
\/
%span
{
data:
{
defer_to:
"#{view.defer_key}-calls"
}
}
...
Gitaly
changelogs/unreleased/zj-peek-gitaly.yml
0 → 100644
浏览文件 @
5e2a748b
---
title
:
Add Gitaly metrics to the performance bar
merge_request
:
author
:
type
:
other
config/initializers/peek.rb
浏览文件 @
5e2a748b
...
...
@@ -16,6 +16,7 @@ Peek.into Peek::Views::Redis
Peek
.
into
Peek
::
Views
::
Sidekiq
Peek
.
into
Peek
::
Views
::
Rblineprof
Peek
.
into
Peek
::
Views
::
GC
Peek
.
into
Peek
::
Views
::
Gitaly
# rubocop:disable Style/ClassAndModuleCamelCase
class
PEEK_DB_CLIENT
...
...
lib/gitlab/gitaly_client.rb
浏览文件 @
5e2a748b
...
...
@@ -33,6 +33,12 @@ module Gitlab
MUTEX
=
Mutex
.
new
private_constant
:MUTEX
class
<<
self
attr_accessor
:query_time
end
self
.
query_time
=
0
def
self
.
stub
(
name
,
storage
)
MUTEX
.
synchronize
do
@stubs
||=
{}
...
...
@@ -83,11 +89,14 @@ module Gitlab
# end
#
def
self
.
call
(
storage
,
service
,
rpc
,
request
)
start
=
Process
.
clock_gettime
(
Process
::
CLOCK_MONOTONIC
)
enforce_gitaly_request_limits
(
:call
)
kwargs
=
request_kwargs
(
storage
)
kwargs
=
yield
(
kwargs
)
if
block_given?
stub
(
service
,
storage
).
__send__
(
rpc
,
request
,
kwargs
)
# rubocop:disable GitlabSecurity/PublicSend
ensure
self
.
query_time
+=
Process
.
clock_gettime
(
Process
::
CLOCK_MONOTONIC
)
-
start
end
def
self
.
request_kwargs
(
storage
)
...
...
lib/peek/views/gitaly.rb
0 → 100644
浏览文件 @
5e2a748b
module
Peek
module
Views
class
Gitaly
<
View
def
duration
::
Gitlab
::
GitalyClient
.
query_time
end
def
calls
::
Gitlab
::
GitalyClient
.
get_request_count
end
def
results
{
duration:
formatted_duration
,
calls:
calls
}
end
private
def
formatted_duration
ms
=
duration
*
1000
if
ms
>=
1000
"%.2fms"
%
ms
else
"%.0fms"
%
ms
end
end
def
setup_subscribers
subscribe
'start_processing.action_controller'
do
::
Gitlab
::
GitalyClient
.
query_time
=
0
end
end
end
end
end
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录