ID |
Date |
Icon |
Author |
Author Email |
Category |
OS |
ELOG Version |
Subject |
69440
|
Wed Dec 8 13:19:55 2021 |
| Stefan Ritt | stefan.ritt@psi.ch | Question | Linux | 3.1.4 | Re: Unclear how to use the command line tool /usr/bin/elog | That reply indicates that the login was not successful. So something went wrong with the authentication. You can try to switch off passwords to see if that makes a difference.
Jose Caballero wrote: |
With curl, I get this as part of the output:
<table class="dlgframe" width="50%" cellpadding="1" cellspacing="0"<tr><td class="errormsg">Error: Command "<b>Submit</b>" not allowed</td></tr>
Hopefully the admins can help. Fingers crossed.
Jose Caballero wrote: |
Thanks for the comments. I will pass them to the admins.
Stefan Ritt wrote: |
Ok, you Apache listes on two ports. On port 80 with HTTP and on port 443 with HTTPS. If you connect to port 80, there is no fowarding to elogd, that's why Apach complains
The requested URL /LogBook/ was not found on this server.
On port 443 using the HTTPS protocol (with -s) you apparently get forwarded to elogd. The fact that you succeeded to connect to Apache without the "-s" flag tells me that your Apache listens on port 443 with the HTTP protocol, not HTTPS. First I would configure Apache such that is also forwards port 80 to elogd. Then you don't have to use HTTPS at all (at least for testing).
Then I agree with Andreas that you might be missing an attribute or so. You can also use "curl" instead of "elog" which might tell you more details. See https://elog.psi.ch/elogs/Forum/68597
Andreas Luedeke wrote: |
But this is real progress! Now elog successfully connected, and all your data was transmitted, but elogd refused your content.
A possible explanation is that one required attribute of this logbook was not provided in your elog command, or that one value of an attribute does not match any allowed value for that attribute.
Here we can only help if you post the config of your logbook.
Cheers, Andreas
PS: you did not provide the -s option?!? Just in case you lack the knowledge: providing a port number 443 does not imply the use of the SSL protocoll.
Jose Caballero wrote: |
Not really. The full URL in the browser is https://elog-1.matrix.com/LogBook. That's why I am trying with "-h elog-1.matrix.com -l LogBook"
I have just tried with -p, here is the full output:
[root@elog-1 ~]# /usr/bin/elog -h elog-1.matrix.com -p 443 -v -x -l LogBook -u jcaballero xxxx -a Team='Team Name' -a Category='Category Name' -a 'Affected service'='Affected Service' -a Criticality=Normal -a 'Oncall Documentation'='No modifications required' -a Subject='This is a test, ignore me' 'This is a test, ignore me'
Successfully connected to host elog-1.matrix.com, port 443
Request sent to host:
POST /Tier1/ HTTP/1.0
Content-Type: multipart/form-data; boundary=---------------------------462A01443E24BC6541C5BB72
Host: elog1.matrix.com:443
User-Agent: ELOG
Content-Length: 1610
Content sent to host:
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="cmd"
Submit
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="unm"
jcaballero
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="upwd"
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="exp"
LogBook
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="suppress"
1
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="encoding"
ELCode
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="Team"
Team Name
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="Category"
Category Name
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="Affected_service"
Affected Service
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="Criticality"
Normal
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="Oncall_Documentation"
No modifications required
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="Subject"
This is a test, ignore me
---------------------------462A01443E24BC6541C5BB72
Content-Disposition: form-data; name="Text"
This is a test, ignore me
---------------------------462A01443E24BC6541C5BB72
Response received:
Error transmitting message
Stefan Ritt wrote: |
If you use HTTPS, you have to connect to port 443 of your server, using the "-p" option.
Furthermore, you run under an Apache server, right? How do you do the redirecting to elogd? I guess you specified a subdir in the URL named /LogBook to redirect to elogd. The you use another part of the URL to select the logbook, which again might be "LogBook". Is that correct? So your full URL in the browser would be https://elog-1.matrix.com/LogBook/LogBook. If that's the case, you have to tell the elog tool that you use a subdir in the URL using the "-d" option.
Stefan
Jose Caballero wrote: |
This is what I get with -s:
---------------------------------
Successfully connected to host elog-1.matrix.com, port 80
elogd server does not run SSL protocol
---------------------------------
And the entry has not been created.
Andreas Luedeke wrote: |
If you need HTTPS then you must specify the "-s" option.
You could have looked into the help of the elog command:
> elog -h
elogd 3.1.4 built Jun 14 2021, 18:01:54 revision 611489b
usage: elog
elog -h <hostname> [-p port] [-d subdir]
Location where elogd is running
-l logbook/experiment Name of logbook or experiment
-s Use SSL for communication
[-v] For verbose output
[-u username password] User name and password
[-f <attachment>] (up to 50 attachments)
-a <attribute>=<value> (up to 50 attributes)
[-r <id>] Reply to existing message
[-q] Quote original text on reply
[-e <id>] Edit existing message
[-w <id>|last] Download existing message (last message)
[-x] Suppress email notification
[-n 0|1|2] Encoding: 0:ELcode,1:plain,2:HTML
-m <textfile>] | <text>
Arguments with blanks must be enclosed in quotes
The elog message can either be submitted on the command line, piped in like
"cat text | elog -h ... -l ... -a ..." or in a file with the -m flag.
Multiple attributes and attachments can be supplied
Jose Caballero wrote: |
Hi Stefan,
Here is the, I believe, relevant part of the output:
-------------------------------------------------
Response received:
HTTP/1.1 404 Not Found
Date: Tue, 07 Dec 2021 07:26:07 GMT
Server: Apache/2.4.6 (Scientific Linux) OpenSSL/1.0.2k-fips PHP/5.4.16
Content-Length: 204
Connection: close
Content-Type: text/html; charset=iso-8859-1
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /LogBook/ was not found on this server.</p>
</body></html>
-------------------------------------------------
Note that the URL https://elog-1.matrix.com/LogBook/ exists and works. That's how we create all our log entries via web browser.
Thanks,
Jose
Stefan Ritt wrote: |
Please issue the elog command with an added "-v" flag and post the output here.
Stefan
Jose Caballero wrote: |
Hello,
I am trying first time to use the tool /usr/bin/elog. From the documentation is not clear to if everything must be in quotes or not, if every attribute requires -a.
Here is how my attempt looks like (changing actual data by fake one):
/usr/bin/elog -h elog-1.matrix.com -l LogBook -u jcaballero mypassword -a Team='Team Name Here' Category='Category Here' -a 'Affected service'='Name of affected service here' -a Criticality=Normal -a 'Oncall Documentation'='No modifications required' -a Subject='here is the subject line' 'here is the text'
I just get "Error transmitting message".
Attributes Team and Category are of checkbox type. Attributes Criticality and Oncall Documentation are of radio type.
What is wrong with my command attempt?
Thanks a lot in advance.
Cheers,
Jose
|
|
|
|
|
|
|
|
|
|
|
|
69441
|
Thu Dec 9 10:33:09 2021 |
| Stefan Ritt | stefan.ritt@psi.ch | Question | Linux | 3.1.4 | Re: Unclear how to use the command line tool /usr/bin/elog | Have you tried to connect directly to elogd and not going through Apache?
Jose Caballero wrote: |
Thanks for the comments. I will pass them to the admins.
|
|
69442
|
Thu Dec 9 21:58:08 2021 |
| Jose Caballero | jcaballero.hep@gmail.com | Question | Linux | 3.1.4 | Re: Unclear how to use the command line tool /usr/bin/elog | Nope. How? Is it documented?
Stefan Ritt wrote: |
Have you tried to connect directly to elogd and not going through Apache?
Jose Caballero wrote: |
Thanks for the comments. I will pass them to the admins.
|
|
|
69443
|
Fri Dec 10 21:41:05 2021 |
| Andreas Luedeke | andreas.luedeke@psi.ch | Question | Linux | 3.1.4 | Re: Unclear how to use the command line tool /usr/bin/elog | It is the default. If you install ELOG on your PC and run it, then every access will be directly to the ELOG web service. If you want to have Apache inbetween, it is some extra effort.
Jose Caballero wrote: |
Nope. How? Is it documented?
Stefan Ritt wrote: |
Have you tried to connect directly to elogd and not going through Apache?
Jose Caballero wrote: |
Thanks for the comments. I will pass them to the admins.
|
|
|
|
69447
|
Tue Dec 14 21:42:45 2021 |
| Jose Caballero | jcaballero.hep@gmail.com | Question | Linux | 3.1.4 | Re: Unclear how to use the command line tool /usr/bin/elog | Hi Andreas,
I realize from your response that my question was not clear. I was not asking how to get it. Note that I am just a regular user, I am not the administrator of the service.
My question was about how to use it. From the man page, or from the explanation in the Administration Guide, it is not clear to me how to pass the same arguments I have been trying for /usr/bin/elog. For example, how to pass the list of attributes. I don't see a "-a" option for elogd.
Thanks.
Andreas Luedeke wrote: |
It is the default. If you install ELOG on your PC and run it, then every access will be directly to the ELOG web service. If you want to have Apache inbetween, it is some extra effort.
Jose Caballero wrote: |
Nope. How? Is it documented?
Stefan Ritt wrote: |
Have you tried to connect directly to elogd and not going through Apache?
Jose Caballero wrote: |
Thanks for the comments. I will pass them to the admins.
|
|
|
|
|
69450
|
Thu Dec 16 18:24:41 2021 |
| Andreas Luedeke | andreas.luedeke@psi.ch | Question | Linux | 3.1.4 | Re: Unclear how to use the command line tool /usr/bin/elog | Now you've totally lost me.
elogd is a web service. You connect to it with a web browser. You don't pass arguments at startup of the service that refers to specific atrributes. I have no idea what you intend to do, you need to explain a lot more.
Jose Caballero wrote: |
Hi Andreas,
I realize from your response that my question was not clear. I was not asking how to get it. Note that I am just a regular user, I am not the administrator of the service.
My question was about how to use it. From the man page, or from the explanation in the Administration Guide, it is not clear to me how to pass the same arguments I have been trying for /usr/bin/elog. For example, how to pass the list of attributes. I don't see a "-a" option for elogd.
Thanks.
Andreas Luedeke wrote: |
It is the default. If you install ELOG on your PC and run it, then every access will be directly to the ELOG web service. If you want to have Apache inbetween, it is some extra effort.
Jose Caballero wrote: |
Nope. How? Is it documented?
Stefan Ritt wrote: |
Have you tried to connect directly to elogd and not going through Apache?
Jose Caballero wrote: |
Thanks for the comments. I will pass them to the admins.
|
|
|
|
|
|
69451
|
Thu Dec 16 21:34:05 2021 |
| Jose Caballero | jcaballero.hep@gmail.com | Question | Linux | 3.1.4 | Re: Unclear how to use the command line tool /usr/bin/elog | Hi Andreas.
It seems I didn't fully understand the comment by Stefan when he said "Have you tried to connect directly to elogd and not going through Apache?". My bad.
Andreas Luedeke wrote: |
Now you've totally lost me.
elogd is a web service. You connect to it with a web browser. You don't pass arguments at startup of the service that refers to specific atrributes. I have no idea what you intend to do, you need to explain a lot more.
Jose Caballero wrote: |
Hi Andreas,
I realize from your response that my question was not clear. I was not asking how to get it. Note that I am just a regular user, I am not the administrator of the service.
My question was about how to use it. From the man page, or from the explanation in the Administration Guide, it is not clear to me how to pass the same arguments I have been trying for /usr/bin/elog. For example, how to pass the list of attributes. I don't see a "-a" option for elogd.
Thanks.
Andreas Luedeke wrote: |
It is the default. If you install ELOG on your PC and run it, then every access will be directly to the ELOG web service. If you want to have Apache inbetween, it is some extra effort.
Jose Caballero wrote: |
Nope. How? Is it documented?
Stefan Ritt wrote: |
Have you tried to connect directly to elogd and not going through Apache?
Jose Caballero wrote: |
Thanks for the comments. I will pass them to the admins.
|
|
|
|
|
|
|
69455
|
Mon Jan 3 19:11:08 2022 |
| Phil Rubin | rubinp@cern.ch | Question | Linux | 3.1.3 | Re: Spurious characters in the searched string | Hi,
Ten years later...this problem shows up in my installation behind Apache, affecting only drop-down menu searches. Test installations with elog serving itself do not show the problem, so I presume it has something to do with Apache configuration, re-routing, etc. Unfortunately, this thread did not provide any details of the solution.
The problem looks like this:
Type: %255ERoutine%2524
or, in the url:
https://servername/?Type=%25255ERoutine%252524
Removing 2525 from front and back of the url makes everything work.
The only rewrite entries in the configuration file(s) are:
## Rewrite rules
RewriteEngine On
#redirect non-SSL traffic to SSL site
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Perhaps there's a rewrite rule that could be added to block the 2525? Something like:
RewriteCond %{QUERY_STRING} 2525
RewriteRule .* - [F,L]
I don't have a lot of experience configuring Apache, so any suggestions would be welcome.
Thanks.
Phil
Olivier Callot wrote: |
Olivier Callot wrote: |
Stefan Ritt wrote: |
Olivier Callot wrote: |
Hi,
We have a problem with the search command: Since our last upgrade to v2.9.0-2418 the searched string is pre- and postfixed with ASCII character expressed in % format, see the attached image. The searched string is prefied with %255E and postfxed by %2524 in the URL. And teh search fails. This affects searches from drop-down menus.
Thanks in advance.
|
Strange. In this forum it works without extra characters. Just try it yourself. Do you have any strange configuration? Can you send me a minimal elogd.cfg which produces that error, maybe derived from the example elogd.cfg from the distribution.
- Stefan
|
Well, It may be our implementation of re-routing web requests: The requested string in elog is prefixed by %5E (^) and postfixed by %24 ($). But in my case, the '%' is again escaped as %25 so the prefix becomes %255E that is not understood by elog as being '^' ...
I will see with my experts in routing if this is something that can be fixed in our configuration. But when elog processes the input string, it should un-escape these characters and find back the '^', no?
|
It turned out to be a setting of our re-routing of requests that re-escaped the '%'. Sorry for the noise. Cheers
|
|
|