Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
K
Kolla Ansible
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Very Demiurge Very Mindful
Kolla Ansible
Commits
e4bfedd7
Commit
e4bfedd7
authored
3 years ago
by
Zuul
Committed by
Gerrit Code Review
3 years ago
Browse files
Options
Downloads
Plain Diff
Merge "[CI] Check fluentd errors"
parents
f1c68d1d
581544a0
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
tests/check-logs.sh
+23
-5
23 additions, 5 deletions
tests/check-logs.sh
with
23 additions
and
5 deletions
tests/check-logs.sh
+
23
−
5
View file @
e4bfedd7
...
@@ -9,13 +9,19 @@ set -o pipefail
...
@@ -9,13 +9,19 @@ set -o pipefail
export
PYTHONUNBUFFERED
=
1
export
PYTHONUNBUFFERED
=
1
function
check_file_for_level
{
function
check_
openstack_log_
file_for_level
{
# $1: file
# $1: file
# $2: log level
# $2: log level
# Filter out false positives from logged config options.
# Filter out false positives from logged config options.
sudo
egrep
"
$2
"
$1
| egrep
-v
"(logging_exception_prefix|rate_limit_except_level)"
sudo
egrep
"
$2
"
$1
| egrep
-v
"(logging_exception_prefix|rate_limit_except_level)"
}
}
function
check_fluentd_log_file_for_level
{
# $1: file
# $2: log level
sudo
egrep
"
\[
$2
\]
"
$1
}
function
filter_out_expected_critical
{
function
filter_out_expected_critical
{
# $1: file
# $1: file
# Filter out expected critical log messages that we do not want to fail the
# Filter out expected critical log messages that we do not want to fail the
...
@@ -35,7 +41,7 @@ function filter_out_expected_critical {
...
@@ -35,7 +41,7 @@ function filter_out_expected_critical {
*
)
*
)
# We have to provide some pass-through consumer to avoid:
# We have to provide some pass-through consumer to avoid:
# grep: write error: Broken pipe
# grep: write error: Broken pipe
# from check_file_for_level
# from check_
openstack_log_
file_for_level
cat
cat
;;
;;
esac
esac
...
@@ -49,15 +55,15 @@ for level in CRITICAL ERROR WARNING; do
...
@@ -49,15 +55,15 @@ for level in CRITICAL ERROR WARNING; do
any_matched
=
0
any_matched
=
0
echo
"Checking for
$level
log messages"
echo
"Checking for
$level
log messages"
for
f
in
$(
sudo
find /var/log/kolla/
-type
f
)
;
do
for
f
in
$(
sudo
find /var/log/kolla/
-type
f
)
;
do
if
check_file_for_level
$f
$level
>
/dev/null
;
then
if
check_
openstack_log_
file_for_level
$f
$level
>
/dev/null
;
then
any_matched
=
1
any_matched
=
1
if
[[
$level
=
CRITICAL
]]
;
then
if
[[
$level
=
CRITICAL
]]
;
then
if
check_file_for_level
$f
$level
| filter_out_expected_critical
$f
>
/dev/null
;
then
if
check_
openstack_log_
file_for_level
$f
$level
| filter_out_expected_critical
$f
>
/dev/null
;
then
any_critical
=
1
any_critical
=
1
fi
fi
fi
fi
echo
$f
>>
$all_file
echo
$f
>>
$all_file
check_file_for_level
$f
$level
>>
$all_file
check_
openstack_log_
file_for_level
$f
$level
>>
$all_file
echo
>>
$all_file
echo
>>
$all_file
fi
fi
done
done
...
@@ -66,6 +72,18 @@ for level in CRITICAL ERROR WARNING; do
...
@@ -66,6 +72,18 @@ for level in CRITICAL ERROR WARNING; do
fi
fi
done
done
# check fluentd errors (we consider them critical)
fluentd_log_file
=
/var/log/kolla/fluentd/fluentd.log
fluentd_error_summary_file
=
/tmp/logs/kolla/fluentd-error.log
if
check_fluentd_log_file_for_level
$fluentd_log_file
error
>
/dev/null
;
then
any_critical
=
1
echo
"(critical) Found some error log messages in fluentd logs. Matches in
$fluentd_error_summary_file
"
check_fluentd_log_file_for_level
$fluentd_log_file
error
>
$fluentd_error_summary_file
echo
>>
$fluentd_error_summary_file
fi
if
[[
$any_critical
-eq
1
]]
;
then
if
[[
$any_critical
-eq
1
]]
;
then
echo
"Found critical log messages - failing job."
echo
"Found critical log messages - failing job."
exit
1
exit
1
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment