ptrofimov / beanstalk_console Goto Github PK
View Code? Open in Web Editor NEWAdmin console for Beanstalk queue server
License: MIT License
Admin console for Beanstalk queue server
License: MIT License
The view showing a specific tube doesn't appear to refresh the count as the main "tubes" page does. Is this as designed, and if so are there plans to implement the auto-refresh in the tube view?
Thanks
These show up in the logs every time i refresh the page using HHVM. When this happens only the toolbar will show up in the output, the stats is blank. After a restart of HHVM it will work for a while and then the same cycle happens again.
Notice: Undefined variable: contentType in /path/to/dir/lib/tpl/main.php on line 15
Notice: Undefined variable: _tplPage in /path/to/dir/lib/tpl/main.php on line 132
Warning: File not found:/path/to/dir/lib/tpl/.php in /path/to/dir/lib/tpl/main.php on line 132
In BeanstalkInterface.class.php
the script tries to unserialize the message. If you send a serialized object into beanstalk which is not an instance of a built-in class, beanstalk_console dies without any errors.
I don't know what is the original purpose of this unserialization thing but I think it's really dangerous.
Hi, now my console online in my domain, but how to hidden this from other user ?
executed the following and received an error. Environment is Ubuntu 14.04 LTS
/home/username/$curl -s http://getcomposer.org/installer | php
/home/username/$mkdir beanstalk_console/
/home/username/$php composer.phar create-project ptrofimov/beanstalk_console -s dev beanstalk_console/
getting the following from the last command:
vagrant@ubuntu-14:~$ php composer.phar create-project ptrofimov/beanstalk_console -s dev beanstalk_console/
[Composer\Downloader\TransportException]
The "https://packagist.org/packages.json" file could not be downloaded: php
_network_getaddresses: getaddrinfo failed: Name or service not known
failed to open stream: php_network_getaddresses: getaddrinfo failed: Name o
r service not known
Just wanted to let you know, that I've built a docker image for that. Should be even simpler to setup than vagrant: https://github.com/schickling/dockerfiles/tree/master/beanstalkd-console
Can be used like this:
$ docker run -d -p 11300:11300 --name beanstalkd schickling/beanstalkd
$ docker run -d -p 2080:2080 --link beanstalkd:beanstalkd schickling/beanstalkd-console
do you want a pullrequest?
If the servers
config option includes IPv6 address literals like '[::1]:11300' or [fe80::800:27ff:fe00:0%eth0]:11300
, beanstalk_console can not connect. This is because BeanstalkInterface __construct is naive in parsing the server address. I hacked up a serious kludge to take the last element of the exploded result as the port, to verify that it would work, but that code is too ugly to productionize.
It may be better to take URL-like values as the server list, like beanstalk://host:port/
(this is what the backburner library does. Then parse_url
can be used to extract the necessary components unambiguously. Maybe maintain backwards compatibility by using parse_url
if the string starts with beanstalk://
?
Note that it has no trouble connecting over IPv6 if the address or name can be parsed correctly (specifically, giving a name that only resolves to an IPv6 address or AAAA records does work).
display all statistics in an overview page from the server
Hi there,
I have a general question, which I hope you could help me with.
I'm trying to manage Laravel Job Queue via beanstalk_console, and everything seem to be great when it comes to monitoring, except for when I kick buried jobs. I'm burying jobs that actually fail in Laravel, which means - they can't be executed successfully. I bury them for the purpose of investigating the issue and then re-starting after the issue is fixed. When I kick a buried failed job from beanstalk_console - it looks like it gets processed and then deleted from the queue. The problem is, it's still a failing job, it's supposed to get buried again, but that doesn't happen. Any ideas why would it be happening?
Hello, I have been using beanstalk console from long time, and now suddenly its not showing my job queues in console. Is there something I have to do? Please let me know.
Hi,
Why do I get this:
Fatal error: Uncaught exception 'Pheanstalk_Exception_ServerException' with message 'Unhandled response: HTTP/1.1 400 Bad Request' in /Users/pmdg3/Desktop/development/beanstalk_console/lib/Pheanstalk/YamlResponseParser.php:43 Stack trace: #0 /Users/pmdg3/Desktop/development/beanstalk_console/lib/Pheanstalk/Connection.php(120): Pheanstalk_YamlResponseParser->parseResponse('HTTP/1.1 400 Ba...', NULL) #1 /Users/pmdg3/Desktop/development/beanstalk_console/lib/Pheanstalk.php(364): Pheanstalk_Connection->dispatchCommand(Object(Pheanstalk_Command_StatsCommand)) #2 /Users/pmdg3/Desktop/development/beanstalk_console/lib/Pheanstalk.php(311): Pheanstalk->_dispatch(Object(Pheanstalk_Command_StatsCommand)) #3 /Users/pmdg3/Desktop/development/beanstalk_console/lib/BeanstalkInterface.class.php(73): Pheanstalk->stats() #4 /Users/pmdg3/Desktop/development/beanstalk_console/lib/include.php(46): BeanstalkInterface->getServerStats() #5 /Users/pmdg3/Desktop/development/beanstalk_console/lib/tpl/serversList.php(22): Console->getServerStats('ex in /Users/pmdg3/Desktop/development/beanstalk_console/lib/Pheanstalk/YamlResponseParser.php on line 43
name
Browser view:
http://grab.by/yJ1A
Thanks
beanstalk_console 1.5.2
So, jobs has been deleted, but then something went wrong.
I don't know why and don't see any articles related to this kind of issue with the beanstalkd itself, but when i add a job to a tube that isn't default, the tube appears then after the job is complete it disappears.
-column bar chart or something else
When trying to view a particular tube, the page throws a 500 error. I'm unable to see the actual error in apache, message or php error log.
I'm able to view the main page (beanstalk/public/?server=localhost:11300), however viewing a tube does not work. (beanstalk/public/?server=localhost:11300&tube=default).
Do you have any ideas? Thanks.
Sam
add the following
*in /lib/include.php:
protected function _actionBury()
{
$this->interface->buryReady( $this->_globalVar[ 'tube' ] );
header(
sprintf( 'Location: index.php?server=%s&tube=%s', $this->_globalVar[ 'server' ],
$this->_globalVar[ 'tube' ] ) );
exit();
}
*in /lib/BeanstalkInterface.class.php:
public function buryReady( $tube )
{
$job = $this->_client->useTube( $tube )->peekReady();
$this->_client->reserve();
$this->_client->bury( $job );
}
then add a button in /lib/tpl/currentTube.php
( I was too lazy to actually set an icon for it so I reused the trash can )
<a class="btn btn-danger btn-small" href="?server=<?=$server?>&tube=<?=$tube?>&action=bury"><i class="icon-trash icon-white"></i> bury next ready job</a>
If I save a server (via the upper right hand "Add server" button), and then select a saved server from the dropdown menu, the URI used is:
http:/host:port/public/?server=serverhost:serverport
when it actually needs to be:
http://host:port/public/index.php?server=serverhost:serverport
I keep on coming across this error and I am unable to add a server to the console screen The error occurs when I run php -S localhost:7654 -t public.
PHP Notice: Undefined variable: tubes in /Users/myfilename/Code/beanstalk_console/lib/tpl/main.php on line 90
Do you have any idea what the cause it I have tried uninstalling and reinstalling many times but this hasn't worked. Beanstalk Queues are OK I can add to the queue and run php artisan queue:work no problem
In order to post-process buried jobs, it's easier to do on another tube.
After deleting a record from the tube this error shows up. Clicking on "Click to open" doesn't do anything.
Unserialize got a fatal error, please include the necessary files, or deactivate unserialization from Settings (click to open)
Warning: Cannot modify header information - headers already sent by (output started at /home/beanconsole/lib/BeanstalkInterface.class.php:255) in /home/beanconsole/lib/include.php on line 414
The updateTable
function in customer.js iterates through all the td
elements in the new table, and compares them to the old table.
This means that when the new table has more td
elements than the old (as when a new Tube has been created since the last update), an index out of bounds occurs on line 205.
Also, the background color animation this function applies does not appear to work for me in Firefox 20 on Windows 7.
I see that the code holds functionality for autoRefresh, but currently this is hidden, and there is no button to turn it on. I see other commits on other forks CRBS/beanstalk_console@7041cc8 to re-add this functionality.
@ptrofimov Why was this taken out? Is there an issue with this?
Without vagrant. Preferably with /beanstalkconsole/ prefix support.
jquery-1.10.2.min.map is not in the vendor directory.
I made my beanstalkd persistent (option -b) and now it is not possible to clear all the jobs. Is this a bug, or is this not possible?
I'm having troubles trying to connect my local homestead instance (which is Laravel's Vagrant environment) and I'm unable to connect the Beanstalkd Console to my server instance.
I also followed Jeffery Way's tutorial like issue 58 and was unable to get either any errors to show up using error_reporting(0) or any connection to my Homestead server.
I also see the php warning when I click on 'All Tubes'
Notice: Undefined variable: tubes in [...]/beanstalk_console/lib/tpl/main.php on line 90
It appears that the previous ticket has been closed, but I'm still experiencing troubles.
I did a fresh install using composer of the Beanstalkd Console (version 1.7) and got it serving pages using
vagrant up
Any idea why I might be having troubles?
Thanks
Keep getting errors, I don't know how to fix.
Notice: Undefined variable: tubes in [...]/beanstalk_console/lib/tpl/main.php on line 90
and
Warning: Invalid argument supplied for foreach() in [...]/beanstalk_console/lib/tpl/main.php on line 90
I'm running this on "localhost:7654" and the laravel app I'm using is at "pony.dev" both obviously on my local machine. However pony.dev is a VM using vaprobash, and localhost is just being served up with php -S.
Any help would be greatly appreciated.
When you try to view the tube there is a warning:
Warning: Invalid argument supplied for foreach() in /var/www/lib/tpl/currentTubeJobsShowcase.php on line 2
Several browser refreshes help - there is some change that this warning does not appear. But this is really annoying.
You could check if array is ok (not null for example) before using it in foreach
:
<?php if ($peek) foreach ($peek as $state => $job): ?>
I'm using serialized PHP objects as job data, which works fine if I edit index.php to include the composer autoloader from the project containing those classes. Is there a better way to include arbitrary paths into the autoloading for beanstalk_console so it can display these things properly?
Having followed the instructions to install this monitor on a fresh Homestead install I am navigating to the public folder as per instructions in a web browser but I'm encountering and error
No input file specified
Which has thrown me somewhat because there are no obvious configuration options for an input file. Can someone help me on this? Thanks
In the servers configuration list, we actually have something like:
'servers' => array(
'beanstalk://192.168.1.48:12100',
'beanstalk://10.10.0.12:13500'
// Etc
)
Actually it is difficult to make the difference on the beanstalk console web interface when there are a bunch of servers.
It would be awesome to name servers like this:
'servers' => array(
'Local VM' => 'beanstalk://192.168.1.48:12100',
'Client VM' => 'beanstalk://10.10.0.12:13500'
// Etc
)
And use these keys as label. Or:
'servers' => array(
array('Local VM', 'beanstalk://192.168.1.48:12100'),
array('Client VM', 'beanstalk://10.10.0.12:13500')
// Etc
)
Or more verbosely:
'servers' => array(
array(
'name' => 'Local VM',
'host' => 'beanstalk://192.168.1.48:12100'
),
array(
'name' => 'Client VM',
'host' => 'beanstalk://10.10.0.12:13500'
)
// Etc
)
It seems to me the auto-refresh feature does not work or is not implemented yet.
I reproduced the issue with the Composer install as well as the last commit git checkout.
The "Move all _____ jobs" button does not work correctly for delayed jobs. There's a good reason for this.
In the code we currently copy over a job's contents to the new tube, then delete the job from the old tube. However, this will not work for delayed jobs. The protocol diagram shows us that deleting delayed jobs is not a valid operation. So correctly we should actually do things in the following order:
I am not sure where to find support for this, please check this image of my console
I'm not sure what the total-jobs column means? First I thought it was completed jobs but reading your tooltip
"cumulative count of jobs created in this tube in the current beanstalkd process"
sounds like I have 400+ jobs in memory hung up in some sort of infinity state? how can I see the jobs "in the process"
also is current using + current watching mean there are 5 processes trying to work through this?
we currently run a beanstalkd with over 40 tubes. it would be handy to be able to filter the tubes by name in the overview.
Hi Guys, what licence is your code released under? You don't have a licence under version control, or mentioned in the README.md.
Thanks,
Undefined variable: tubes in [..]/beanstalk_console/lib/tpl/main.php
Please can anyone help me
Hi guys, thanks again for writing this wonderful application.
I created a Perl CPAN distribution for the wrapper code I'd been using to allow it to be easily mounted as part of a larger PSGI app -- the module is here on CPAN -- http://metacpan.org/module/Plack::App::BeanstalkConsole
and on github -- https://github.com/karenetheridge/Plack-App-BeanstalkConsole.
thanks again! \o/
Can we get an auto refresh on the page where we see multiple servers?
When using beanstalk console as a dependency (via composer require
) the way the config file is included breaks "other" configuration.
Instead if the configuration gets merged it will work as expected:
if (isset($GLOBALS['config'])) {
$GLOBALS['config'] = array_merge_recursive([
/**
* List of servers available for all users
*/
'servers' => array(/* 'Local Beanstalkd' => 'beanstalk://localhost:11300', ... */),
/**
* Saved samples jobs are kept in this file, must be writable
*/
'storage' => dirname(__FILE__) . DIRECTORY_SEPARATOR . 'storage.json',
/**
* Optional Basic Authentication
*/
'auth' => array(
'enabled' => false,
'username' => 'admin',
'password' => 'password',
),
/**
* Version number
*/
'version' => '1.7.4',
], $GLOBALS['config'])
}
Composer will install the Beanstalk Cosnole and ...
Should be Composer will install the Beanstalk CoNSole and :)
Default beanstalk server is not configured when using links because there is a missing -i
flag to sed in line 29 on docker/run.sh
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.