cloudstack-users-cn mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Wei ZHOU <ustcweiz...@gmail.com>
Subject Re: How does the parameter startdate/enddate of api listEvents() use new time format like 'yyyy-MM-dd HH:mm:ss' ?
Date Fri, 28 Aug 2015 08:53:11 GMT
Can you try this script?
https://gist.github.com/swill/1468908/7874b32f421ea5dd7a9d876b270c78bc3a7dd878#file-cs_api_keys-py



2015-08-28 10:40 GMT+02:00 <tony_caotong@163.com>:

>
>
> My scripts is just from cloudstack website
>
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Simple+class+for+making+API+calls%2C+Python
>
> and I just do some testing like this:
>
> 1. >>> from SignedAPICall import api
> 2. >>> api.listEvents(listall='true', startdate='2015-08-28')
> 3. >>> api.listEvents(listall='true', startdate='2015-08-28 16:20:00')
>
> Line 2 works fine, line 3 failed with error " 'http error', 401,
> 'Unauthorized' ".
>
> I also do some other tests, they also works fine, like api.listHosts()
> api.listVirtualMachines().
>
> when line 3 failed,  management-server.log said this:
>
> 2015-08-28 16:37:53,619 DEBUG [c.c.a.ApiServlet]
> (catalina-exec-15:ctx-4e587804) ===START===  10.0.1.99 -- GET
> apiKey=hjZ12EQ4JfFasIHO3RCXBLji-3RbBmdC973utGwCL5388WypVKwtaNsDso-JzVQIZXUVwfaT1vANdDUJs3Vkkg&command=listEvents&listall=true&response=json&startdate=2015-08-28+16%3A20%3A00&signature=r7wa861jYWP4QbNMeEjZZ2wNpIc%3D
> 2015-08-28 16:37:53,622 INFO  [c.c.a.ApiServer]
> (catalina-exec-15:ctx-4e587804 ctx-1f6fddbe) User signature:
> r7wa861jYWP4QbNMeEjZZ2wNpIc= is not equaled to computed signature:
> 4c8Kmn+cbMZAmfSvSISPkWt9WCQ=
> 2015-08-28 16:37:53,622 DEBUG [c.c.a.ApiServlet]
> (catalina-exec-15:ctx-4e587804 ctx-1f6fddbe) ===END===  10.0.1.99 -- GET
> apiKey=hjZ12EQ4JfFasIHO3RCXBLji-3RbBmdC973utGwCL5388WypVKwtaNsDso-JzVQIZXUVwfaT1vANdDUJs3Vkkg&command=listEvents&listall=true&response=json&startdate=2015-08-28+16%3A20%3A00&signature=r7wa861jYWP4QbNMeEjZZ2wNpIc%3D
>
> following for line 2:
> 2015-08-28 16:37:15,900 DEBUG [c.c.a.ApiServlet]
> (catalina-exec-13:ctx-f8019189) ===START===  10.0.1.99 -- GET
> apiKey=hjZ12EQ4JfFasIHO3RCXBLji-3RbBmdC973utGwCL5388WypVKwtaNsDso-JzVQIZXUVwfaT1vANdDUJs3Vkkg&command=listEvents&listall=true&response=json&startdate=2015-08-28&signature=KZZIAOaRduzCJlo0byaN9j4uvro%3D
> 2015-08-28 16:37:15,939 DEBUG [c.c.a.ApiServlet]
> (catalina-exec-13:ctx-f8019189 ctx-c42b8c5e ctx-1ebbe226) ===END===
> 10.0.1.99 -- GET
> apiKey=hjZ12EQ4JfFasIHO3RCXBLji-3RbBmdC973utGwCL5388WypVKwtaNsDso-JzVQIZXUVwfaT1vANdDUJs3Vkkg&command=listEvents&listall=true&response=json&startdate=2015-08-28&signature=KZZIAOaRduzCJlo0byaN9j4uvro%3D
>
>
>
> -----------
> Cao Tong
>
>
> On 08/28/2015 02:09 PM, Abhinandan Prateek wrote:
>
>> apikey/signature should work and they have same privileges as the
>> respective user logged in.
>> Are all the api calls failing or just some ?
>> Can you share relevant portion of the scripts that you are trying to run ?
>>
>> On 28-Aug-2015, at 11:31 am, tony_caotong@163.com wrote:
>>>
>>>
>>> Thanks for all your people's replys.
>>>
>>> 1.  Abhinandan,  My ACS manager was not listening on port '8096',
>>>
>>> 2.  As Yipeng said, When I call this api from cloudmonkey, it works
>>> fine, like this
>>>     " cloudmonkey api listEvents listall=true startdate='2015-08-28
>>> 00:00:00' "
>>>
>>>     When I call it through my python scripts, I used the
>>> apikey/signature pair to work,  but it failed.
>>>     I found that how cloudmonkey works,
>>>     first it login with username/password, then call the function with
>>> this session id.
>>>
>>> it seems that the apikey/signature pair's privilege is not same with
>>> username/password pair's ?
>>>
>>>
>>> @Daan, yes I am a Chinese. I am afraid it's not a preblem about
>>> character encodings perhaps.
>>>
>>>
>>> -----------
>>> Cao Tong
>>>
>>> On 08/27/2015 08:54 PM, Abhinandan Prateek wrote:
>>>
>>>> Try using the “8096” port for testing/checking APIs.
>>>>
>>>> shapeblue.com> wrote:
>>>>
>>>>> Yes, as per
>>>>> https://cloudstack.apache.org/api/apidocs-4.2/root_admin/listEvents.html
>>>>>
>>>>>
>>>>> On 24-Aug-2015, at 2:08 pm, tony_caotong@163.com wrote:
>>>>>>
>>>>>> Hello Every.
>>>>>>
>>>>>> I know this is a very simple question to most of you. but it is
>>>>>> really hard for me to continue my work.
>>>>>>
>>>>>> So could Anyone spend your three minutes to give me some advice,
it
>>>>>> will be very usefull to me.
>>>>>>
>>>>>> my question is:
>>>>>>
>>>>>>    How does the parameter startdate/enddate of api listEvents() use
>>>>>> new time format  like 'yyyy-MM-dd HH:mm:ss' ?
>>>>>>
>>>>>>
>>>>>> Event({'listall':'True', 'startdate':'2015-08-24 00:00:00'})
>>>>>>>>>
>>>>>>>>
>>>>>> http://10.0.1.100:8080/client/api?apiKey=hjZ12EQ4JfFasIHO3RCXBLji-3RbBmdC973utGwCL5388WypVKwtaNsDso-JzVQIZXUVwfaT1vANdDUJs3Vkkg&command=listEvents&listall=True&response=json&startdate=2015-08-24+00%3A00%3A00&signature=z4LQCw7yzGmTK5B7TzAbzl1biXI%3D
>>>>>> Traceback (most recent call last):
>>>>>> File "<stdin>", line 1, in <module>
>>>>>> File "SignedAPICall.py", line 67, in Event
>>>>>>    a = api.listEvents(request)
>>>>>> File "SignedAPICall.py", line 49, in handlerFunction
>>>>>>    return self._make_request(name, args[0])
>>>>>> File "SignedAPICall.py", line 61, in _make_request
>>>>>>    data = self._http_get(self.value)
>>>>>> File "SignedAPICall.py", line 54, in _http_get
>>>>>>    response = urllib.urlopen(url)
>>>>>> File "/usr/lib64/python2.7/urllib.py", line 87, in urlopen
>>>>>>    return opener.open(url)
>>>>>> File "/usr/lib64/python2.7/urllib.py", line 208, in open
>>>>>>    return getattr(self, name)(url)
>>>>>> File "/usr/lib64/python2.7/urllib.py", line 359, in open_http
>>>>>>    return self.http_error(url, fp, errcode, errmsg, headers)
>>>>>> File "/usr/lib64/python2.7/urllib.py", line 372, in http_error
>>>>>>    result = method(url, fp, errcode, errmsg, headers)
>>>>>> File "/usr/lib64/python2.7/urllib.py", line 683, in http_error_401
>>>>>>    errcode, errmsg, headers)
>>>>>> File "/usr/lib64/python2.7/urllib.py", line 381, in http_error_default
>>>>>>    raise IOError, ('http error', errcode, errmsg, headers)
>>>>>> IOError: ('http error', 401, 'Unauthorized', <httplib.HTTPMessage
>>>>>> instance at 0x7f083da78998>)
>>>>>>
>>>>>> -----------
>>>>>> Cao Tong
>>>>>>
>>>>>> On 08/19/2015 10:32 AM, tony_caotong@163.com wrote:
>>>>>>
>>>>>>> Hi All:
>>>>>>>
>>>>>>>    Does any one have any idea ? Thanks.
>>>>>>>
>>>>>>> -----------
>>>>>>> Cao Tong
>>>>>>>
>>>>>>> On 08/18/2015 06:04 PM, tony_caotong@163.com wrote:
>>>>>>>
>>>>>>>> In ParamProcessWorker::setFieldValue() I found this lins:
>>>>>>>>
>>>>>>>>           case DATE:
>>>>>>>>                // This piece of code is for maintaining backward
>>>>>>>> compatibility
>>>>>>>>                // and support both the date formats(Bug 9724)
>>>>>>>>
>>>>>>>> Is it related to my problem?  Where can I found the descriptions
>>>>>>>> about BUG9724 ?
>>>>>>>>
>>>>>>>> -----------
>>>>>>>> Cao Tong
>>>>>>>>
>>>>>>>> On 08/18/2015 05:54 PM, tony_caotong@163.com wrote:
>>>>>>>>
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>> When I use timestamp format startdate="2015-07-31", it
works find.
>>>>>>>>> When I use it like this startdate="2015-07-31 13:00:00".
>>>>>>>>> It return a error
>>>>>>>>> IOError: ('http error', 401, 'Unauthorized', <httplib.HTTPMessage
>>>>>>>>> instance at 0x16dca70>)
>>>>>>>>>
>>>>>>>>> Could anyone tell me why ?
>>>>>>>>>
>>>>>>>>> I have read the code
>>>>>>>>> "DefaultLoginAPIAuthenticatorCmd::authenticate()" , but
I am still not
>>>>>>>>> understand what was happening,
>>>>>>>>> it seems authenticate failed, but why??
>>>>>>>>>
>>>>>>>>> -----------
>>>>>>>>> Cao Tong
>>>>>>>>>
>>>>>>>>> On 07/31/2015 07:07 PM, tony_caotong@163.com wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>>    was this format is enabled in ACS 4.5.1 like /"yyyy-MM-dd
>>>>>>>>>> HH:mm:ss"
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> /    I found it in 4.5.0 API doc, but it seems not
enabled.
>>>>>>>>>>
>>>>>>>>>> http://cloudstack.apache.org/api/apidocs-4.5/user/listEvents.html
>>>>>>>>>>
>>>>>>>>>> api.listEvents(startdate="2015-07-31 13:00:00")
>>>>>>>>>>>>>
>>>>>>>>>>>> Traceback (most recent call last):
>>>>>>>>>> File "<stdin>", line 1, in <module>
>>>>>>>>>> File "call.py", line 48, in handlerFunction
>>>>>>>>>>    return self._make_request(name, kwargs)
>>>>>>>>>> File "call.py", line 60, in _make_request
>>>>>>>>>>    data = self._http_get(self.value)
>>>>>>>>>> File "call.py", line 53, in _http_get
>>>>>>>>>>    response = urllib.urlopen(url)
>>>>>>>>>> File "/usr/lib64/python2.7/urllib.py", line 87, in
urlopen
>>>>>>>>>>    return opener.open(url)
>>>>>>>>>> File "/usr/lib64/python2.7/urllib.py", line 208,
in open
>>>>>>>>>>    return getattr(self, name)(url)
>>>>>>>>>> File "/usr/lib64/python2.7/urllib.py", line 359,
in open_http
>>>>>>>>>>    return self.http_error(url, fp, errcode, errmsg,
headers)
>>>>>>>>>> File "/usr/lib64/python2.7/urllib.py", line 372,
in http_error
>>>>>>>>>>    result = method(url, fp, errcode, errmsg, headers)
>>>>>>>>>> File "/usr/lib64/python2.7/urllib.py", line 683,
in http_error_401
>>>>>>>>>>    errcode, errmsg, headers)
>>>>>>>>>> File "/usr/lib64/python2.7/urllib.py", line 381,
in
>>>>>>>>>> http_error_default
>>>>>>>>>>    raise IOError, ('http error', errcode, errmsg,
headers)
>>>>>>>>>> IOError: ('http error', 401, 'Unauthorized', <httplib.HTTPMessage
>>>>>>>>>> instance at 0x16dca70>)
>>>>>>>>>>
>>>>>>>>>> my ACS version:
>>>>>>>>>>
>>>>>>>>>> [root@cs ~]# rpm -qa |grep cloud
>>>>>>>>>> cloudstack-management-4.5.1-shapeblue0.el6.x86_64
>>>>>>>>>> cloudstack-awsapi-4.5.1-shapeblue0.el6.x86_64
>>>>>>>>>> cloudstack-agent-4.5.1-shapeblue0.el6.x86_64
>>>>>>>>>> cloudstack-common-4.5.1-shapeblue0.el6.x86_64
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Find out more about ShapeBlue and our range of CloudStack
related
>>>>> services
>>>>>
>>>>> IaaS Cloud Design & Build<
>>>>> http://shapeblue.com/iaas-cloud-design-and-build//>
>>>>> CSForge – rapid IaaS deployment framework<
>>>>> http://shapeblue.com/csforge/>
>>>>> CloudStack Consulting<http://shapeblue.com/cloudstack-consultancy/>
>>>>> CloudStack Software Engineering<
>>>>> http://shapeblue.com/cloudstack-software-engineering/>
>>>>> CloudStack Infrastructure Support<
>>>>> http://shapeblue.com/cloudstack-infrastructure-support/>
>>>>> CloudStack Bootcamp Training Courses<
>>>>> http://shapeblue.com/cloudstack-training/>
>>>>>
>>>>> This email and any attachments to it may be confidential and are
>>>>> intended solely for the use of the individual to whom it is addressed.
Any
>>>>> views or opinions expressed are solely those of the author and do not
>>>>> necessarily represent those of Shape Blue Ltd or related companies. If
you
>>>>> are not the intended recipient of this email, you must neither take any
>>>>> action based upon its contents, nor copy or show it to anyone. Please
>>>>> contact the sender if you believe you have received this email in error.
>>>>> Shape Blue Ltd is a company incorporated in England & Wales. ShapeBlue
>>>>> Services India LLP is a company incorporated in India and is operated
under
>>>>> license from Shape Blue Ltd. Shape Blue Brasil Consultoria Ltda is a
>>>>> company incorporated in Brasil and is operated under license from Shape
>>>>> Blue Ltd. ShapeBlue SA Pty Ltd is a company registered by The Republic
of
>>>>> South Africa and is traded under license from Shape Blue Ltd. ShapeBlue
is
>>>>> a registered trademark.
>>>>>
>>>> Find out more about ShapeBlue and our range of CloudStack related
>>>> services
>>>>
>>>> IaaS Cloud Design & Build<
>>>> http://shapeblue.com/iaas-cloud-design-and-build//>
>>>> CSForge – rapid IaaS deployment framework<http://shapeblue.com/csforge/
>>>> >
>>>> CloudStack Consulting<http://shapeblue.com/cloudstack-consultancy/>
>>>> CloudStack Software Engineering<
>>>> http://shapeblue.com/cloudstack-software-engineering/>
>>>> CloudStack Infrastructure Support<
>>>> http://shapeblue.com/cloudstack-infrastructure-support/>
>>>> CloudStack Bootcamp Training Courses<
>>>> http://shapeblue.com/cloudstack-training/>
>>>>
>>>> This email and any attachments to it may be confidential and are
>>>> intended solely for the use of the individual to whom it is addressed. Any
>>>> views or opinions expressed are solely those of the author and do not
>>>> necessarily represent those of Shape Blue Ltd or related companies. If you
>>>> are not the intended recipient of this email, you must neither take any
>>>> action based upon its contents, nor copy or show it to anyone. Please
>>>> contact the sender if you believe you have received this email in error.
>>>> Shape Blue Ltd is a company incorporated in England & Wales. ShapeBlue
>>>> Services India LLP is a company incorporated in India and is operated under
>>>> license from Shape Blue Ltd. Shape Blue Brasil Consultoria Ltda is a
>>>> company incorporated in Brasil and is operated under license from Shape
>>>> Blue Ltd. ShapeBlue SA Pty Ltd is a company registered by The Republic of
>>>> South Africa and is traded under license from Shape Blue Ltd. ShapeBlue is
>>>> a registered trademark.
>>>>
>>>
>>>
>>> Find out more about ShapeBlue and our range of CloudStack related
>> services
>>
>> IaaS Cloud Design & Build<
>> http://shapeblue.com/iaas-cloud-design-and-build//>
>> CSForge – rapid IaaS deployment framework<http://shapeblue.com/csforge/>
>> CloudStack Consulting<http://shapeblue.com/cloudstack-consultancy/>
>> CloudStack Software Engineering<
>> http://shapeblue.com/cloudstack-software-engineering/>
>> CloudStack Infrastructure Support<
>> http://shapeblue.com/cloudstack-infrastructure-support/>
>> CloudStack Bootcamp Training Courses<
>> http://shapeblue.com/cloudstack-training/>
>>
>> This email and any attachments to it may be confidential and are intended
>> solely for the use of the individual to whom it is addressed. Any views or
>> opinions expressed are solely those of the author and do not necessarily
>> represent those of Shape Blue Ltd or related companies. If you are not the
>> intended recipient of this email, you must neither take any action based
>> upon its contents, nor copy or show it to anyone. Please contact the sender
>> if you believe you have received this email in error. Shape Blue Ltd is a
>> company incorporated in England & Wales. ShapeBlue Services India LLP is a
>> company incorporated in India and is operated under license from Shape Blue
>> Ltd. Shape Blue Brasil Consultoria Ltda is a company incorporated in Brasil
>> and is operated under license from Shape Blue Ltd. ShapeBlue SA Pty Ltd is
>> a company registered by The Republic of South Africa and is traded under
>> license from Shape Blue Ltd. ShapeBlue is a registered trademark.
>>
>
>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message