Protože se mi nepovedlo rychle rozběhnout gunicorn (nedával jsem teď pár
let pozor, to je standard i pro produkci?), debuggoval jsem nainstalovaný
balíček, našel podezřelou závislost libxml2, nainstaloval její systémový
balík a následně udělal nový env a pip install, kde se leccos souvisejícího
buildovalo. Moje chápání podstaty a zejm. odlišnosti mezi manage.py a wsgi
je dost na vodě, ale třeba to přes noc docvakne. Kdybyste mi to někdo uměl
jednoduše vysvětlit, budu nadšen stejně, jako že to už funguje :).

Každopádně dík moc za pomoc,
John

On Mon, Jun 19, 2017 at 12:20 PM Petr Messner <petr.mess...@gmail.com>
wrote:

> Přinejhorším můžeš kód toho balíku upravit (editovat přímo soubor v envu)
> a dát si tam nějaké debug logování.
>
> A když si to spustíš přes gunicorn místo mod_wsgi, tak to funguje? Kdoví,
> oproti jakému python interpretreu je ten mod_wsgi zkompilovaný.
>
> PM
>
> Dne 19. června 2017 11:02 Jan Walter <jnw...@gmail.com> napsal(a):
>
>> Díky moc za nápady.
>>
>> Metodu volám s jednoduchým modelovým vstupem totožným v obou případech.
>> Vypsal jsem si v místě volání locals() a globals() (ne do hloubky).
>> Jediný, co vidím jako odlišnost je cesta k importovaným balíčkům
>> /home/ct/www/env/local/lib/python2.7/site-packages/django/db/models/__init__.pyc
>> (apache) vs.
>> /home/ct/www/env/lib/python2.7/site-packages/django/db/models/__init__.pyc
>> (manage.py)
>> nicméně local je jen link
>> lrwxrwxrwx 1 ct ct 20 Jun 18 20:52 /home/ct/www/env/local/lib ->
>> /home/ct/www/env/lib
>>
>> Apache běží pod jiným uživatelem (WSGIDaemonProcess má ale nastaven
>> atribut user), je to asi dobrá hypotéza; i když jsem ale dal celýmu obsahu
>> virtualenvu rwx, je to beze změny. Možná nějaký pracovní soubory, adresáře,
>> rychle jsem prohlídl, jestli to něco čte (bez úspěchu), ještě to budu muset
>> prozkoumat víc. Divný je, že to nepíše žádnou chybu, suverénně to vrátí ''.
>> Je to v principu věc, která z jednoho řetězce udělá jiný bez dalších
>> externalit.
>>
>> Dost možná přehlížím něco úplně triviálního, až to najdu, dám vědět.
>>
>> Ještě jednou díky.
>>
>>
>> On Mon, Jun 19, 2017 at 8:57 AM Vláďa Macek <ma...@sandbox.cz> wrote:
>>
>>> Ahoj,
>>>
>>> to jsou nepříjemný problémy. Mimochodem, jakmile to půjde, opravdu
>>> upgraduj
>>> Django.
>>>
>>> Neznám premailer, ale vypadá to, že nemá nic společného s běhovým
>>> prostředím/middlewary, takže by nemělo na způsobu spuštění záležet.
>>>
>>> Odhaduju, že bude mít jiné vstupy. V obou případech si "vytiskni" vše, co
>>> leze do konstruktoru třídy Premailer a do té metody a porovnej, budou tam
>>> rozdíly.
>>>
>>> Nezapomeň na objekty v globálních identifikátorech, které mohou taky
>>> změnit
>>> chování. Django settings je taky globální. Filesystém je globální.
>>> Ovlivněn
>>> může být i kód volaný z modulu premailer.py (nebo jím děděný, nebo i z
>>> něj
>>> děděný) a tedy to hned nevidíš.
>>>
>>> Vytiskni si i výstupy těsně před oběma returny. Je možné, že jsi se
>>> přehlédl a problém bude někde jinde. Mozek je mrška a někdy sám sebe
>>> přesvědčí o nesmyslu.
>>> (
>>> http://s2.quickmeme.com/img/fe/fe6a68c7673a3ae9b8856a27ab2ddbe578daedd9755be7cda3182ed8252d3743.jpg
>>> )
>>>
>>> V.
>>>
>>>
>>> On 19.6.2017 07:52, Jan Walter wrote:
>>> > Ahoj,
>>> > mám problém, se kterým si nevím moc rady. Spočívá v odlišnosti výsledku
>>> > volání jedné specifické metody přes Apache mod_wsgi vs. vývojový server
>>> > via manage.py runserver (nebo i interaktivní shell) v konzoli.
>>> >
>>> >  1. Django 1.5.4 (vím, není to soudobé).
>>> >  2. Volám metodu transform z premailer knihovny
>>> >     (
>>> https://github.com/peterbe/premailer/blob/master/premailer/premailer.py#L279
>>> ).
>>> >  3. Když to zavolám pomocí manage.py (runserver nebo shell), funguje
>>> >     naprosto OK - distribuuje styly do elementů vstupního dokumentu.
>>> >  4. Když ji volám přes Apache, vrací prázdný řetězec, žádná chyba.
>>> Stejný
>>> >     vstup, stejný virtual env.
>>> >
>>> > Máte nějakou ideu, co na to může mít vliv, co by mohlo být jinak, resp.
>>> > co/jak debuggovat? Jsem už trochu bez nápadů.
>>> >
>>> > Dík moc za případnou inspiraci,
>>> > John
>>>
>>> --
>>> --
>>> E-mailová skupina django-cs@googlegroups.com
>>> Správa: http://groups.google.cz/group/django-cs
>>> ---
>>> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
>>> django-cs ve Skupinách Google.
>>> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny,
>>> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com.
>>> Chcete-li zobrazit tuto diskusi na webu, navštivte
>>> https://groups.google.com/d/msgid/django-cs/1e0c244c-708e-3ca0-2c86-df0732efd594%40sandbox.cz
>>> .
>>> Další možnosti najdete na adrese https://groups.google.com/d/optout.
>>>
>> --
>> --
>> E-mailová skupina django-cs@googlegroups.com
>> Správa: http://groups.google.cz/group/django-cs
>> ---
>> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
>> „django-cs“ ve Skupinách Google.
>> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny,
>> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com.
>>
> Chcete-li tuto diskusi zobrazit na webu, navštivte
>> https://groups.google.com/d/msgid/django-cs/CAK-vJU%3DRi0b4--HQX1%3DXxvAKjMDQS9BZDcHjFFxgCqn-t0W9YQ%40mail.gmail.com
>> <https://groups.google.com/d/msgid/django-cs/CAK-vJU%3DRi0b4--HQX1%3DXxvAKjMDQS9BZDcHjFFxgCqn-t0W9YQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>
>
>> Další možnosti najdete na https://groups.google.com/d/optout.
>>
> --
> --
> E-mailová skupina django-cs@googlegroups.com
> Správa: http://groups.google.cz/group/django-cs
> ---
> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
> „django-cs“ ve Skupinách Google.
> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny,
> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com.
> Chcete-li tuto diskusi zobrazit na webu, navštivte
> https://groups.google.com/d/msgid/django-cs/CAK9Q5BQRe7MaiVuYRC7N-b_w0PA8Dghdbq8zpsKymiPURJiTgw%40mail.gmail.com
> <https://groups.google.com/d/msgid/django-cs/CAK9Q5BQRe7MaiVuYRC7N-b_w0PA8Dghdbq8zpsKymiPURJiTgw%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
> Další možnosti najdete na https://groups.google.com/d/optout.
>

-- 
-- 
E-mailová skupina django-cs@googlegroups.com
Správa: http://groups.google.cz/group/django-cs
--- 
Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs 
ve Skupinách Google.
Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, zašlete 
e-mail na adresu django-cs+unsubscr...@googlegroups.com.
Chcete-li zobrazit tuto diskusi na webu, navštivte 
https://groups.google.com/d/msgid/django-cs/CAK-vJU%3DcPjkywzwjom9RUhv%2BSnUMFjt9QeyVFd6M7s7nZa1vyA%40mail.gmail.com.
Další možnosti najdete na adrese https://groups.google.com/d/optout.

Reply via email to