Skip to content
代码片段 群组 项目
未验证 提交 b9a6228f 编辑于 作者: Vijay Hawoldar's avatar Vijay Hawoldar 提交者: GitLab
浏览文件

Apply 1 suggestion(s) to 1 file(s)


Co-authored-by: default avatarThong Kuah <tkuah@gitlab.com>
上级 301e54d1
No related branches found
No related tags found
无相关合并请求
...@@ -52,15 +52,17 @@ def remove_user_from_namespace(member_deletion_schedule) ...@@ -52,15 +52,17 @@ def remove_user_from_namespace(member_deletion_schedule)
memberships = ::Member.in_hierarchy(namespace).with_user(user).limit(MEMBER_BATCH_SIZE) memberships = ::Member.in_hierarchy(namespace).with_user(user).limit(MEMBER_BATCH_SIZE)
destroyed_count = 0 destroyed_count = 0
memberships.each do |member| destroy_duration = Benchmark.realtime do
# limit deletion to execute only for 60s (execution_tracker::MAX_RUNTIME) memberships.each do |member|
break if execution_tracker.over_limit? # limit deletion to execute only for 60s (execution_tracker::MAX_RUNTIME)
break if execution_tracker.over_limit?
::Members::DestroyService.new(scheduled_by).execute(member, skip_subresources: true)
destroyed_count += 1 ::Members::DestroyService.new(scheduled_by).execute(member, skip_subresources: true)
destroyed_count += 1
end
end end
log_monitoring_data(user.id, namespace.id, destroyed_count) log_monitoring_data(user.id, namespace.id, destroyed_count, destroy_duration)
# when all memberships removed, cleanup schedule: # when all memberships removed, cleanup schedule:
member_deletion_schedule.destroy! if memberships.count === 0 member_deletion_schedule.destroy! if memberships.count === 0
...@@ -71,12 +73,13 @@ def member_deletion_schedules ...@@ -71,12 +73,13 @@ def member_deletion_schedules
end end
strong_memoize_attr :member_deletion_schedules strong_memoize_attr :member_deletion_schedules
def log_monitoring_data(user_id, namespace_id, destroyed_count) def log_monitoring_data(user_id, namespace_id, destroyed_count, destroy_duration)
Gitlab::AppLogger.info( Gitlab::AppLogger.info(
message: 'Processed scheduled member deletion', message: 'Processed scheduled member deletion',
user_id: user_id, user_id: user_id,
namespace_id: namespace_id, namespace_id: namespace_id,
destroyed_count: destroyed_count destroyed_count: destroyed_count,
destroy_duration_s: destroy_duration
) )
end end
end end
......
...@@ -59,7 +59,8 @@ ...@@ -59,7 +59,8 @@
message: 'Processed scheduled member deletion', message: 'Processed scheduled member deletion',
user_id: user.id, user_id: user.id,
namespace_id: group.id, namespace_id: group.id,
destroyed_count: 1 destroyed_count: 1,
destroy_duration_s: an_instance_of(Float)
) )
perform_work perform_work
......
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册