Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New task: Configure a central syslog server #28

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

cwickert
Copy link
Member

Feel free to make changes as you like. Please take care of merging this while I'm away over the weekend. TIA!
task-configure-central-syslog-server_color_en.pdf

@cwickert cwickert requested a review from dmpop September 15, 2021 14:13
xml/task-configure-syslog-server.xml Outdated Show resolved Hide resolved
xml/task-configure-syslog-server.xml Outdated Show resolved Hide resolved
xml/task-configure-syslog-server.xml Outdated Show resolved Hide resolved
xml/task-configure-syslog-server.xml Outdated Show resolved Hide resolved
<para>
This basic setup does not include encryption and is only suitable for
trusted internal networks. TLS encryption is strongly recommended but
requires a certificate infrastructure to be set up first.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
requires a certificate infrastructure to be set up first.
requires you to set up a certificate infrastructure first.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rewording to avoid passive voice.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with passive voice? We need a CA, regardless of who sets it up. In fact, many organizations already have a CA and whoever configures the logging is not necessarily the same person that sets up the log server.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For some reason I was notified of this comment, so I feel the urge to chime in. 😄 Liam's suggestion sounds much better. The passive voice in general, and in this case in particular, sounds contrived. And you doesn't refer to a specific person but a collective you.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So it's 2:2 now (@sknorr + me vs. @lproven and @dmpop) :-) Flip a 🪙 ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The fact that Liam is a native speaker tips the scales in our favor.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is a fair point that the person building the syslog server may not be the same one.

How about:

"TLS encryption is strongly recommended, but requires that you already have a certificate infrastructure."

Copy link

@ghost ghost Oct 8, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Style guide:

Use second person (“you”) to refer to the reader. Normally, the reader is the user or administrator who performs the actions described. Do not overuse “you.” It is often understood, especially in directions.

(NB: This does not read "Exclusively use second person to the refer to the reader" -- there is room for interpretation.)

Use passive voice if there is no emphasis on the object of the verb or if the performer of the action is unknown.

Both from: https://documentation.suse.com/style/current/single-html/docu_styleguide/#sec-language

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To avoid this discussion, I simplified
requires a certificate infrastructure to be set up first. to
requires a certificate infrastructure.
When or who sets it up is a different question, we just say it's a requirement.

Copy link
Member Author

@cwickert cwickert Nov 10, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For some reason I was notified of this comment, […]

@dmpop, you were notified because I requested a review from you.

xml/task-configure-syslog-server.xml Outdated Show resolved Hide resolved
xml/task-configure-syslog-server.xml Outdated Show resolved Hide resolved
xml/task-configure-syslog-server.xml Outdated Show resolved Hide resolved
reason.
</para>
<para>
Run this check on both the log server and the remote logging clients.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Run this check on both the log server and the remote logging clients.
Run this check on both the syslog server and the remote logging clients.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Trying to avoid duplication…

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, OK, I get it. But I am not sure that [a] in docs, repetition is so bad as in normal prose, and [b] that repetition of the phrase "log server" instead is much of an improvement.

I stand by my point: I feel that consistent usage of the precise phrase is preferable.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[a] It's not repetition but a mix of the long and the short phrase to avoid repetition. Just like you use an article instead of a noun when it's clear what you are referring to. We do this all the time, e.g. we first use 'DNS server' and then 'the server' or 'file permissions' and then just 'permissions'. This eases reading and makes the text shorter.
[b] It is consistent: I would argue that the text is consistent. For the first occurrence in a section I use the long term, then the shorter one.

IHMO readability is just as important as consistency, and in this case wins because there is no ambiguity. Do you see any room for misinterpretations? What other server could this sentence refer to?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[a] in docs, repetition is so bad as in normal prose

I concur with Liam here -- exact repetition helps with terminology and translation.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks.

We are basically only and always talking about servers. This logging server collects logs from other servers and nothing but other servers. So I think we need to be specific.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We are basically only and always talking about servers. This logging server collects logs from other servers and nothing but other servers.

No, the machines that log remotely are not necessarily servers and we explicitly call them clients here. Whether or not they offer any service over the network is a completely different question, that is not been dealt with here.

Anyway, I give in and will change it accordingly.

<term>Is the firewall open?</term>
<listitem>
<para>
Check if the firewall on the log server is open with
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Check if the firewall on the log server is open with
Check if the firewall on the syslog server is open with

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would support Liam's suggestion (unsurprising, I guess ...)

cwickert and others added 3 commits October 8, 2021 11:23
Most but not all suggestions applied, others will follow manually.

Co-authored-by: Liam Proven <[email protected]>
@cwickert
Copy link
Member Author

I have now replaced all but one instance of "log server" with "syslog server". The only remaining occurrence of "log server" is in line 109, where we have "syslog server" right before it in line 108 repeating this really sounds awkward.

@sknorr or @dmpop, please be so kind as to review and approve this.

Copy link

@ghost ghost left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am sorry. But this is probably not what you wanted. I tried to make suggestions though, so I hope integrating my feedback is painless irregardful.

Comment on lines +97 to +100
The <package>rsyslog</package> package is installed on all machines.
If not, run <command>zypper in yast2-mail</command> to install it.
</para>
<!-- <screen>&prompt.root;<command>zypper in rsyslog</command></screen> -->
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am confused by these installation instructions. My own system with Leap has yast2-mail installed, but the rsyslog package is missing. The paragraph also does a bad job at explaining cause & effect here -- is rsyslog a package required by YaST somehow?

> zypper se yast2-mail

S  | Name       | Summary                    | Type
 --+------------+----------------------------+-----------
i+ | yast2-mail | YaST2 - Mail Configuration | package
   | yast2-mail | YaST2 - Mail Configuration | srcpackage


> zypper se rsyslog

S | Name                         | Summary                          | Type
 -+------------------------------+----------------------------------+-----------
  | pcp-pmda-rsyslog             | Performance Co-Pilot (PCP) met-> | package
  | rsyslog                      | The enhanced syslogd for Linux-> | package
  | rsyslog                      | The enhanced syslogd for Linux-> | srcpackage
[...]

Comment on lines +119 to +122
<title>Configure the central <systemitem>rsyslog</systemitem> server</title>
<para>
To set up a central syslog server, perform the following steps:
</para>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why create a procedure with title and a preamble in a section that contains nothing but this one procedure anyway? Suggestion: delete the procedure's title tag, move the preamble para above the procedure, and integrate or delete the commented para that already exists in between section title and begin of the procedure.
(And maybe remove the xml:id from the procedure.)

</para>
<step>
<para>
Edit the configuration file
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step does not tell you anything about editing things, soo... maybe reword like this:

Suggested change
Edit the configuration file
In an editor, open the configuration file

<callout arearefs="co-tuning-syslog-server-port">
<para>
Port for <systemitem class="daemon">rsyslogd</systemitem> to listen on.
Select a privileged port below 1024. The default is 514.
Copy link

@ghost ghost Nov 10, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am a moderate fan of putting port numbers into literals. I won't be offended if you disagree though.

Suggested change
Select a privileged port below 1024. The default is 514.
Select a privileged port below <literal>1024</literal>. The default port
is <literal>514</literal>.

<title>TCP versus UDP protocol</title>
<para>
Traditionally syslog uses the UDP protocol to transmit log messages over
the network. This involves less overhead, but lacks reliability. Log
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Improve wording:

Suggested change
the network. This involves less overhead, but lacks reliability. Log
the network. This creates less overhead, but is less reliable. Log

Comment on lines +283 to +284
syslog server. This allows you to get a quick overview of events on your
network.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds better to me, but not a native speaker I am:

Suggested change
syslog server. This allows you to get a quick overview of events on your
network.
syslog server. This allows you to get a quick overview of events
within your network.

<section xml:id="troubleshooting-configure-central-syslog-server">
<title>Troubleshooting</title>
<para>
In case the test log message does not appear on the syslog server, perform
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wordy:

Suggested change
In case the test log message does not appear on the syslog server, perform
If the test log message does not appear on the syslog server, perform

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You don't perform steps. You perform tasks and follow steps.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My tendency is toward "either version works" here, too.

Comment on lines +108 to +109
Setting up a central syslog server consists of two parts. First you configure
the central log server, then the clients for remote logging.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

An (imo) more accurate way to describe the task that also avoids the awkwardness you mentioned about repeating the word "syslog server":

Suggested change
Setting up a central syslog server consists of two parts. First you configure
the central log server, then the clients for remote logging.
Setting up central logging with <systemitem class="daemon">rsyslog</systemitem>
consists of two parts: Configuring a central syslog server and configuring
clients to log remotely.

<term>Is the firewall open?</term>
<listitem>
<para>
Check if the firewall on the log server is open with
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would support Liam's suggestion (unsurprising, I guess ...)

<para>
In this configuration, all messages from remote hosts will be treated the
same on the central syslog server. Consider filtering messages into separate
files by remote host or classify them by message category.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

parallel phrasing (filter_ing_ + classify_ing_)

Suggested change
files by remote host or classify them by message category.
files by remote host or classifying them by message category.

<itemizedlist>
<listitem>
<para>
You have installed your product and your system is up and running.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What product? What system? It's the first time you mention them.

<listitem>
<para>
The <package>rsyslog</package> package is installed on all machines.
If not, run <command>zypper in yast2-mail</command> to install it.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
If not, run <command>zypper in yast2-mail</command> to install it.
Otherwise, run <command>zypper in yast2-mail</command> to install it.

<section xml:id="configure-configure-central-syslog-server">
<title>Setting up the central syslog server</title>
<para>
Setting up a central syslog server consists of two parts. First you configure
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Setting up a central syslog server consists of two parts. First you configure
Setting up a central syslog server consists of two parts. First, configure

<important>
<title>TCP versus UDP protocol</title>
<para>
Traditionally syslog uses the UDP protocol to transmit log messages over
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Traditionally? Not the word you'd use in a tech doc. Perhaps by default?

unreliability, using TCP recommended. -->
</para>
<para>
The TCP protocol is more reliable and should be preferred over UDP.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The TCP protocol is more reliable and should be preferred over UDP.
The TCP protocol is more reliable and it should be used instead of UDP.

<section xml:id="troubleshooting-configure-central-syslog-server">
<title>Troubleshooting</title>
<para>
In case the test log message does not appear on the syslog server, perform
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You don't perform steps. You perform tasks and follow steps.

<para>
If you made an error in the configuration of <systemitem
class="daemon">rsyslog</systemitem>, the daemon might refuse to start.
Check it is running with
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Check it is running with
Check whether it is running with

<section xml:id="next-configure-central-syslog-server">
<title>Next steps</title>
<para>
This basic setup does not include encryption and is only suitable for
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This basic setup does not include encryption and is only suitable for
This basic setup does not include encryption and it is only suitable for

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this case, either version works.

Comment on lines +327 to +328
trusted internal networks. TLS encryption is strongly recommended, but
requires a certificate infrastructure.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
trusted internal networks. TLS encryption is strongly recommended, but
requires a certificate infrastructure.
trusted internal networks. TLS encryption is strongly recommended. However this
requires a certificate infrastructure.

requires a certificate infrastructure.
</para>
<para>
In this configuration, all messages from remote hosts will be treated the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In this configuration, all messages from remote hosts will be treated the
In this configuration, all messages from remote hosts are treated the

@cwickert cwickert requested a review from dmpop November 14, 2021 13:08
@cwickert
Copy link
Member Author

@dmpop Ignore my review request, I didn't see your comments. Thanks, I'll deal with them tomorrow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants