Hello Chris, Thanks for providing this debug output.
This error means that bdirjson responded with output, which isn't a valid JSON string. To check what exactly is wrong there, you can enable debug for Baculum API in the api.conf file by changing in [api] section the 'debug' option to "1". After that you can go on the Baculum Web interface to the page with empty drop down lists. In the baculum-api.log file you should see a line starting with: Oct 30 18:38:12 [Debug] [External] Command=Parse output, Output=[ HERE_YOU_WILL_HAVE_BROKEN_JSON ] The output in place HERE_YOU_WILL_HAVE_BROKEN_JSON you can write together with the [ ] square brackets to a separate text file to validate the output by a command line tool, for example: cat your_file | json_pp or if you don't have json_pp, then you can try: cat your_file | python -m json.tool Above commands will show in which line and which column is something wrong, what breaks the JSON structure. Best regards, Marcin Haba (gani) On Fri, 30 Oct 2020 at 13:37, Chris Wilkinson <winstonia...@gmail.com> wrote: > > Hello Marcin > > In the Baculum error log (debug enabled, '/var/log/baculum/baculum-web.log') > I see the following just after opening the resource form. I’m not seeing > anything suspicious in the api or web logs in the Apache2 log directory. > > Can i do another test to try and get closer to the problem? > > ==> > Oct 30 12:24:58 [Debug] [Application] Command=getURIResource, Output= > > EXECUTE URI ==> > http://localhost:9096/api/v1/config/dir?director=homeserver-dir <== > > , File=/usr/share/baculum/htdocs/protected/Web/Class/BaculumAPIClient.php, > Line=180 (line 74, > /usr/share/baculum/htdocs/protected/Common/Class/Logging.php) > Oct 30 12:24:59 [Debug] [Application] Command=preParseOutput, > Output={"output":"JSON tool output was unable to parse.","error":83}, > File=/usr/share/baculum/htdocs/protected/Web/Class/BaculumAPIClient.php, > Line=441 (line 74, > /usr/share/baculum/htdocs/protected/Common/Class/Logging.php) > Oct 30 12:24:59 [Debug] [Application] Command=preParseOutput, Output=stdClass > Object > ( > [output] => JSON tool output was unable to parse. > [error] => 83 > ) > , File=/usr/share/baculum/htdocs/protected/Web/Class/BaculumAPIClient.php, > Line=470 (line 74, > /usr/share/baculum/htdocs/protected/Common/Class/Logging.php) > <== > > Best > -Chris- > > > > > On 30 Oct 2020, at 05:29, Marcin Haba <ganius...@gmail.com> wrote: > > Hello Chris, > > Thanks for providing all these details. > > I think in this case I would propose to check web server error logs > for Baculum API and Baculum Web. If you installed Baculum using binary > packages from bacula.org, they are files: baculum-api-error.log and > baculum-web-error.log located in the web server log directory. Are you > seeing any error there when you load the page with empty drop down > list elements? > > Also it might be useful to enable debug for Baculum Web (gear wheel > icon on the top left on the Baculum Web interface and there: 'Enable > debug' option). Debug files you can find in /var/lib/baculum/ if you > installed using bacula.org packages. Is there anything wrong? > > Best regards, > Marcin Haba (gani) > > On Thu, 29 Oct 2020 at 10:40, Chris Wilkinson <winstonia...@gmail.com> wrote: > > > Hello Marcin. > > Thanks for your fast reply. The output of the command is: > > $ sudo /usr/sbin/bdirjson -c /etc/bacula/bacula-dir.conf -r Job -n home > { > > "Name": "home", > "Type": "Backup", > "Level": "Full", > "Messages": "Standard", > "Storage": ["home-sd"], > "Pool": "pool_full", > "FullBackupPool": "pool_full", > "IncrementalBackupPool": "pool_incr", > "DifferentialBackupPool": "pool_diff", > "Client": "home-fd", > "Fileset": "home", > "Schedule": "home", > "SpoolAttributes": true > } > > And also the version number of bdirjson: > > $ sudo /usr/sbin/bdirjson -? > Copyright (C) 2012-2018 Kern Sibbald. > > Version: 9.2.2 (06 November 2018) > > Usage: bdirjson [<options>] [config_file] > ... > > You are correct that the Job resource has never been edited by Baculum, it > was created manually. I do not generally use quotes for configuration items > though perhaps I should. > > Looking at this resource in Baculum, it exhibits the empty drop downs that I > mentioned. By empty I mean that there are no items in the list at all. > > I wondered if this might be browser related but found that the same effect > occurs in Firefox, Opera and Chrome so it seems not. > > Best > -Chris- > > > > > On 29 Oct 2020, at 02:52, Marcin Haba <ganius...@gmail.com> wrote: > > Hello Chris, > > At the beginning I propose to check the bdirjson output. Could you > tell me if you can see all configured job directives with values when > you execute command as below: > > /bacula/bin/path/bdirjson -c /director/config/path/bacula-dir.conf -r > Job -n home > > You need to adjust paths in this command to the paths in your > environment used by Baculum. > > From the Job resource that you sent, I can see the config isn't > managed by Baculum or the config hasn't been saved any time by > Baculum. It is because Baculum saves string type values with quotes, > for example: > > Storage = "home-sd" > > instead: > > Storage = home-sd > > At the end I have a question if the drop down boxes are empty in > meaning that they have no items, or they have items but none of them > is selected? > > Thanks in advance for all these checking. > > Best regards, > Marcin Haba (gani) > > On Wed, 28 Oct 2020 at 13:37, Chris Wilkinson <winstonia...@gmail.com> wrote: > > > I have noticed that the drop down boxes for various config items in the > Baculum forms are empty. For example, the form for configuring Jobs has drop > downs for Client/FileSet/Pools/Storage/Messages but these are all empty. I do > have all these configured and jobs are running normally. One of my job > configs is below but behaviour is the same for all jobs. > > Job { > Name = "home" > Type = Backup > Level = Full > Messages = Standard > Storage = home-sd > Pool = pool_full > FullBackupPool = "pool_full" > IncrementalBackupPool = "pool_incr" > DifferentialBackupPool = "pool_diff" > Client = home-fd > FileSet = home > Schedule = home > SpoolAttributes = "yes" > } > > This doesn’t seem to be an issue but am curious why this is occurring. > > Best > -Chris- > > > > > _______________________________________________ > Bacula-users mailing list > Bacula-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bacula-users > > > > > -- > "Greater love hath no man than this, that a man lay down his life for > his friends." Jesus Christ > > "Większej miłości nikt nie ma nad tę, jak gdy kto życie swoje kładzie > za przyjaciół swoich." Jezus Chrystus > > > > > -- > "Greater love hath no man than this, that a man lay down his life for > his friends." Jesus Christ > > "Większej miłości nikt nie ma nad tę, jak gdy kto życie swoje kładzie > za przyjaciół swoich." Jezus Chrystus > > -- "Greater love hath no man than this, that a man lay down his life for his friends." Jesus Christ "Większej miłości nikt nie ma nad tę, jak gdy kto życie swoje kładzie za przyjaciół swoich." Jezus Chrystus _______________________________________________ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users