Re: [openstack-dev] [Congress] Push Type Driver implementation

2016-03-24 Thread Masahito MUROI
I checked it, too. The reason why python client raises error is it 
expects driver has dict parameter in config field. But the doctor driver 
has None in the field, then it causes "'NoneType' object has no 
attribute 'items'".


The workaround I think is python client will allow None in the config 
field, or another is Congress Server returns {} if the field is None. I 
pushed a patch about first workaround[1], so please check it.


[1]: https://review.openstack.org/#/c/297515/

On 2016/03/25 3:34, Tim Hinrichs wrote:

I tried the doctorDriver again.  This time I was successful!  I'm still
getting an error when listing the datasources though.  I tried updating
and installing my client, but no change.

// Create the datasource
$ openstack congress datasource create doctor doctor
+-+--+
| Field   | Value|
+-+--+
| config  | None |
| description | None |
| driver  | doctor   |
| enabled | True |
| id  | 3717095c-25a7-4fe2-8f18-25d845b11c60 |
| name| doctor   |
| type| None |
+-+--+

// Push data
$ curl -g -i -X PUT
http://localhost:1789/v1/data-sources/3717095c-25a7-4fe2-8f18-25d845b11c60/tables/events/rows
-H "User-Agent: python-congressclient" -H "Content-Type:
application/json" -H "Accept: application/json" -d  '[
 >   {
 > "id": "0123-4567-89ab",
 > "time": "2016-02-22T11:48:55Z",
 > "type": "compute.host.down",
 > "details": {
 > "hostname": "compute1",
 > "status": "down",
 > "monitor": "zabbix1",
 > "monitor_event_id": "111"
 > }
 >   }
 > ]'
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 0
X-Openstack-Request-Id: req-47c6dfdf-74cd-4101-829a-657b6aea1e2c
Date: Thu, 24 Mar 2016 18:28:31 GMT


// Ask for contents of table that we pushed
$ openstack congress datasource row list doctor events
++--+--+--++-+--+
| id | time | type | hostname |
status | monitor | monitor_event_id |
++--+--+--++-+--+
| 0123-4567-89ab | 2016-02-22T11:48 | compute.host.dow | compute1 | down
   | zabbix1 | 111  |
|| :55Z | n|  |
| |  |
++--+--+--++-+--+


// List the datasources
$ openstack congress datasource list
'NoneType' object has no attribute 'items'

Tim


On Thu, Mar 17, 2016 at 5:56 PM Tim Hinrichs mailto:t...@styra.com>> wrote:

I tried the doctor driver out.  I just added the file to
congress/datasources, and set up /etc/congress/congress.conf to
include congress.datasources.doctor_driver.DoctorDriver.

I could create a new doctor driver, but afterwards I couldn't list
all the datasources, and I couldn't push any data to it.  See
transcript below.

$ openstack congress datasource create doctor doctor
+-+--+
| Field   | Value|
+-+--+
| config  | None |
| description | None |
| driver  | doctor   |
| enabled | True |
| id  | 906c6327-15f1-4f3c-aa51-1590540c06b9 |
| name| doctor   |
| type| None |
+-+--+

$ openstack congress datasource list
'NoneType' object has no attribute 'items'

The other problem I saw was that the schema was fixed for the doctor
driver.  So I tried to create a push driver that would accept any
collection of tuples.  This wouldn't allow the user to push
arbitrary JSON, but they could push any tuples they'd like.  While
experimenting, I fixed the problem mentioned above by adding a
single (unnecessary) configuration option.  Then I ran into a
Datasource not found problem.  I pushed the code to review so we can
all take a look.

https://review.openstack.org/294348

$ curl -g -i -X PUT
http://localhost:1789/v1/data-sources/push/tables/data/rows -H
"User-Agent: python-congressclient" -H "Content-Type:
application/json" -H "Accept: application/json" -d '[[1]]'
HTTP/1.1 404

Re: [openstack-dev] [Congress] Push Type Driver implementation

2016-03-24 Thread Eric K
I got the same behavior Tim Hinrichs did using DoctorDriver.

The problem when listing datasources does not occur with the basic
PushDriver in progress, but it has other issues when pushing and listing
data. See 

From:  Tim Hinrichs 
Reply-To:  "OpenStack Development Mailing List (not for usage questions)"

Date:  Thursday, March 24, 2016 at 10:34 AM
To:  "OpenStack Development Mailing List (not for usage questions)"

Subject:  Re: [openstack-dev] [Congress] Push Type Driver implementation

> I tried the doctorDriver again.  This time I was successful!  I'm still
> getting an error when listing the datasources though.  I tried updating and
> installing my client, but no change.
> 
> // Create the datasource
> $ openstack congress datasource create doctor doctor
> +-+--+
> | Field   | Value|
> +-+--+
> | config  | None |
> | description | None |
> | driver  | doctor   |
> | enabled | True |
> | id  | 3717095c-25a7-4fe2-8f18-25d845b11c60 |
> | name| doctor   |
> | type| None |
> +-+--+
> 
> // Push data
> $ curl -g -i -X PUT
> http://localhost:1789/v1/data-sources/3717095c-25a7-4fe2-8f18-25d845b11c60/tab
> les/events/rows -H "User-Agent: python-congressclient" -H "Content-Type:
> application/json" -H "Accept: application/json" -d  '[
>> >   {
>> > "id": "0123-4567-89ab",
>> > "time": "2016-02-22T11:48:55Z",
>> > "type": "compute.host.down",
>> > "details": {
>> > "hostname": "compute1",
>> > "status": "down",
>> > "monitor": "zabbix1",
>> > "monitor_event_id": "111"
>> > }
>> >   }
>> > ]'
> HTTP/1.1 200 OK
> Content-Type: application/json; charset=UTF-8
> Content-Length: 0
> X-Openstack-Request-Id: req-47c6dfdf-74cd-4101-829a-657b6aea1e2c
> Date: Thu, 24 Mar 2016 18:28:31 GMT
> 
> 
> // Ask for contents of table that we pushed
> $ openstack congress datasource row list doctor events
> ++--+--+--++--
> ---+--+
> | id | time | type | hostname | status |
> monitor | monitor_event_id |
> ++--+--+--++--
> ---+--+
> | 0123-4567-89ab | 2016-02-22T11:48 | compute.host.dow | compute1 | down   |
> zabbix1 | 111  |
> || :55Z | n|  ||
> |  |
> ++--+--+--++--
> ---+--+
> 
> 
> // List the datasources
> $ openstack congress datasource list
> 'NoneType' object has no attribute 'items'
> 
> Tim
> 
> 
> On Thu, Mar 17, 2016 at 5:56 PM Tim Hinrichs  wrote:
>> I tried the doctor driver out.  I just added the file to
>> congress/datasources, and set up /etc/congress/congress.conf to include
>> congress.datasources.doctor_driver.DoctorDriver.
>> 
>> I could create a new doctor driver, but afterwards I couldn't list all the
>> datasources, and I couldn't push any data to it.  See transcript below.
>> 
>> $ openstack congress datasource create doctor doctor
>> +-+--+
>> | Field   | Value|
>> +-+--+
>> | config  | None |
>> | description | None |
>> | driver  | doctor   |
>> | enabled | True |
>> | id  | 906c6327-15f1-4f3c-aa51-1590540c06b9 |
>> | name| doctor   |
>> | type| None |
>> +-+--+
>> 
>> $ openstack congress datasource list
>> 'NoneType' object has no attribute 'items'
>> 
>> The other problem I saw 

Re: [openstack-dev] [Congress] Push Type Driver implementation

2016-03-24 Thread Tim Hinrichs
I tried the doctorDriver again.  This time I was successful!  I'm still
getting an error when listing the datasources though.  I tried updating and
installing my client, but no change.

// Create the datasource
$ openstack congress datasource create doctor doctor
+-+--+
| Field   | Value|
+-+--+
| config  | None |
| description | None |
| driver  | doctor   |
| enabled | True |
| id  | 3717095c-25a7-4fe2-8f18-25d845b11c60 |
| name| doctor   |
| type| None |
+-+--+

// Push data
$ curl -g -i -X PUT
http://localhost:1789/v1/data-sources/3717095c-25a7-4fe2-8f18-25d845b11c60/tables/events/rows
-H "User-Agent: python-congressclient" -H "Content-Type: application/json"
-H "Accept: application/json" -d  '[
>   {
> "id": "0123-4567-89ab",
> "time": "2016-02-22T11:48:55Z",
> "type": "compute.host.down",
> "details": {
> "hostname": "compute1",
> "status": "down",
> "monitor": "zabbix1",
> "monitor_event_id": "111"
> }
>   }
> ]'
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 0
X-Openstack-Request-Id: req-47c6dfdf-74cd-4101-829a-657b6aea1e2c
Date: Thu, 24 Mar 2016 18:28:31 GMT


// Ask for contents of table that we pushed
$ openstack congress datasource row list doctor events
++--+--+--++-+--+
| id | time | type | hostname | status
| monitor | monitor_event_id |
++--+--+--++-+--+
| 0123-4567-89ab | 2016-02-22T11:48 | compute.host.dow | compute1 | down
| zabbix1 | 111  |
|| :55Z | n|  |
 | |  |
++--+--+--++-+--+


// List the datasources
$ openstack congress datasource list
'NoneType' object has no attribute 'items'

Tim


On Thu, Mar 17, 2016 at 5:56 PM Tim Hinrichs  wrote:

> I tried the doctor driver out.  I just added the file to
> congress/datasources, and set up /etc/congress/congress.conf to include
> congress.datasources.doctor_driver.DoctorDriver.
>
> I could create a new doctor driver, but afterwards I couldn't list all the
> datasources, and I couldn't push any data to it.  See transcript below.
>
> $ openstack congress datasource create doctor doctor
> +-+--+
> | Field   | Value|
> +-+--+
> | config  | None |
> | description | None |
> | driver  | doctor   |
> | enabled | True |
> | id  | 906c6327-15f1-4f3c-aa51-1590540c06b9 |
> | name| doctor   |
> | type| None |
> +-+--+
>
> $ openstack congress datasource list
> 'NoneType' object has no attribute 'items'
>
> The other problem I saw was that the schema was fixed for the doctor
> driver.  So I tried to create a push driver that would accept any
> collection of tuples.  This wouldn't allow the user to push arbitrary JSON,
> but they could push any tuples they'd like.  While experimenting, I fixed
> the problem mentioned above by adding a single (unnecessary) configuration
> option.  Then I ran into a Datasource not found problem.  I pushed the code
> to review so we can all take a look.
>
> https://review.openstack.org/294348
>
> $ curl -g -i -X PUT
> http://localhost:1789/v1/data-sources/push/tables/data/rows -H
> "User-Agent: python-congressclient" -H "Content-Type: application/json" -H
> "Accept: application/json" -d '[[1]]'
> HTTP/1.1 404 Not Found
> Content-Type: application/json; charset=UTF-8
> Content-Length: 102
> X-Openstack-Request-Id: req-23432974-b107-4657-9bbc-c2e05fd25a98
> Date: Thu, 17 Mar 2016 21:13:03 GMT
>
> {"error": {"message": "Not Found::Datasource not found push",
> "error_data": null, "error_code": 404}}
>
> Masahito: do you know what the Datasource Not Found problem is? If not,
> could you look into it? I ran into it with the Doctor Driver too.
>
> Tim
>
>
> On Thu, Mar 17, 2016 at 2:31 AM Masahito MUROI <
> muroi.masah...@lab.ntt.co.jp> wrote:
>
>> Hi folks,
>>
>> This[1] is the driver I mentioned at meeting. It is used for OPNFV
>> D

[openstack-dev] [Congress] Push Type Driver implementation

2016-03-19 Thread Masahito MUROI
Hi folks,

This[1] is the driver I mentioned at meeting. It is used for OPNFV
Doctor[2]. So I plan to push it into master in Newton release, since
feature freeze for Mitaka was passed and the schema of its translator is
under the discussion.

If it's worth to push it in current release to test push driver, I don't
mind doing it.

[1]
https://github.com/muroi/congress/blob/doctor-poc/congress/datasources/doctor_driver.py
[2] https://wiki.opnfv.org/doctor

-- 
室井 雅仁(Masahito MUROI)
Software Innovation Center, NTT
Tel: +81-422-59-4539



__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Congress] Push Type Driver implementation

2016-03-19 Thread Tim Hinrichs
I tried the doctor driver out.  I just added the file to
congress/datasources, and set up /etc/congress/congress.conf to include
congress.datasources.doctor_driver.DoctorDriver.

I could create a new doctor driver, but afterwards I couldn't list all the
datasources, and I couldn't push any data to it.  See transcript below.

$ openstack congress datasource create doctor doctor
+-+--+
| Field   | Value|
+-+--+
| config  | None |
| description | None |
| driver  | doctor   |
| enabled | True |
| id  | 906c6327-15f1-4f3c-aa51-1590540c06b9 |
| name| doctor   |
| type| None |
+-+--+

$ openstack congress datasource list
'NoneType' object has no attribute 'items'

The other problem I saw was that the schema was fixed for the doctor
driver.  So I tried to create a push driver that would accept any
collection of tuples.  This wouldn't allow the user to push arbitrary JSON,
but they could push any tuples they'd like.  While experimenting, I fixed
the problem mentioned above by adding a single (unnecessary) configuration
option.  Then I ran into a Datasource not found problem.  I pushed the code
to review so we can all take a look.

https://review.openstack.org/294348

$ curl -g -i -X PUT
http://localhost:1789/v1/data-sources/push/tables/data/rows -H "User-Agent:
python-congressclient" -H "Content-Type: application/json" -H "Accept:
application/json" -d '[[1]]'
HTTP/1.1 404 Not Found
Content-Type: application/json; charset=UTF-8
Content-Length: 102
X-Openstack-Request-Id: req-23432974-b107-4657-9bbc-c2e05fd25a98
Date: Thu, 17 Mar 2016 21:13:03 GMT

{"error": {"message": "Not Found::Datasource not found push", "error_data":
null, "error_code": 404}}

Masahito: do you know what the Datasource Not Found problem is? If not,
could you look into it? I ran into it with the Doctor Driver too.

Tim


On Thu, Mar 17, 2016 at 2:31 AM Masahito MUROI 
wrote:

> Hi folks,
>
> This[1] is the driver I mentioned at meeting. It is used for OPNFV
> Doctor[2]. So I plan to push it into master in Newton release, since
> feature freeze for Mitaka was passed and the schema of its translator is
> under the discussion.
>
> If it's worth to push it in current release to test push driver, I don't
> mind doing it.
>
> [1]
>
> https://github.com/muroi/congress/blob/doctor-poc/congress/datasources/doctor_driver.py
> [2] https://wiki.opnfv.org/doctor
>
> --
> 室井 雅仁(Masahito MUROI)
> Software Innovation Center, NTT
> Tel: +81-422-59-4539
>
>
>
> __
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev